---
title: Сериализация XML
slug: общие-обмен-данными/сериализация-xml
---

# Библиотека стандартных подсистем

## Сериализация (БСП)

```bsl
Результат = ОбщегоНазначения.ЗначениеВСтрокуXML(Значение)
```

## Десериализация (БСП)

```bsl
Результат = ОбщегоНазначения.ЗначениеИзСтрокиXML(СтрокаXML)
```

# Без библиотеки стандартных подсистем

## Сериализация (XDTO)

```bsl
&НаСервере
Процедура СериализоватьНаСервере()
	
	Таблица = ТаблицаДанных.Выгрузить(); // Какой-то объект
	
	ЗаписьXML = Новый ЗаписьXML;
	ЗаписьXML.УстановитьСтроку();
	
	// Преобразование: ТаблицаЗначений - ОбъектXDTO
	ОбъектXDTO = СериализаторXDTO.ЗаписатьXDTO(Таблица);
	
	// Преобразование: ОбъектXDTO - XML
	ФабрикаXDTO.ЗаписатьXML(ЗаписьXML, ОбъектXDTO);	
	
	ДанныеXML = ЗаписьXML.Закрыть();	
	
КонецПроцедуры

```

## Десериализация (XDTO)

```bsl

&НаСервере
Процедура ДесериализоватьНаСервере()
	
	ЧтениеXML = Новый ЧтениеXML;
	ЧтениеXML.УстановитьСтроку(ДанныеXML);
	
	// Преобразование: XML - ОбъектXDTO
	ТипОбъекта = ФабрикаXDTO.Тип("http://v8.1c.ru/8.1/data/core", "ValueTable"); 
	ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML, ТипОбъекта);
	
	// Преобразование: ОбъектXDTO - ТаблицаЗначений
	Таблица = СериализаторXDTO.ПрочитатьXDTO(ОбъектXDTO);
	
	ТаблицаДанных.Загрузить(Таблица);
	
	ЧтениеXML.Закрыть();	
	
КонецПроцедуры

```