Перейти к основному содержимому

Сериализовать данные

Сериализует данные в формат MessagePack

Функция СериализоватьДанные(Знач Данные, Знач ИзИсточника = Ложь) Экспорт

ПараметрCLI опцияТипОбяз.Назначение
Данные--valueПроизвольныйКоллекция для сериализации
ИзИсточника--rawБулевоДанные являются JSON строкой или файлом на диске
Возвращаемое значение

ДвоичныеДанные - Сериализованные данные

Пример использования для 1С:Предприятие/OneScript
Исходное = Новый Соответствие;
Исходное.Вставить("title" , "Пример");
Исходное.Вставить("count" , 42);
Исходное.Вставить("active" , Истина);
Исходное.Вставить("payload", ПолучитьДвоичныеДанныеИзHexСтроки("DEADBEEF"));

Вложенная = Новый Соответствие;
Вложенная.Вставить("label", "nested");
Вложенная.Вставить("inner", ПолучитьДвоичныеДанныеИзHexСтроки("010203"));
Исходное.Вставить("nested", Вложенная);

Мета = Новый Массив;
Мета.Добавить("tag");
Мета.Добавить(1);
Мета.Добавить(Ложь);
Мета.Добавить(ПолучитьДвоичныеДанныеИзHexСтроки("0A0B"));
Исходное.Вставить("items", Мета);

Результат = OPI_MessagePack.СериализоватьДанные(Исходное);
Восстановленное = OPI_MessagePack.ДесериализоватьДанные(Результат);
# JSON данные также могут быть переданы как путь к файлу .json

oint msgpack СериализоватьДанные \
--value "{'title':'Пример','count':'42','active':true,'payload':'/tmp/0tczftum.tn4','nested':{'label':'nested','inner':'/tmp/ngqjmofk.kio'},'items':['tag','1',false,'/tmp/lldylokd.sjq']}"
Результат
"<Двоичные данные>"