---
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.Закрыть();	
    
КонецПроцедуры

```