Всем привет! Вышла новость о появлении новых методов по работе с JSON, которые появятся в платформе 8.3.23. Если кратко - новые методы ЗаписатьЗначениеJSON и ПрочитатьЗначениеJSON, будут позволять просто и без лишних движений преобразовывать значения 1С в JSON и обратно.
Данная новость есть и на Infostart.ru, в комментарии под которой я собственно и написал, что непреодолимое желание написать данные методы у меня появилось сразу, как только в платформе 1С появилась поддержка JSON.
По просьбе участников сообщества выложил пример своих методов, на что получил совет опубликовать пример данных метода в отдельной статье, что, собственно, и делаю, дабы их увидела широкая общественность. Глядишь, еще кому пригодятся, ведь новая платформа выйдет довольно не скоро.
Собственно сами методы:
//Аналог ЗаписатьЗначениеJSON
Функция ДанныеВJSON(Значение, Знач ПараметрыЗаписиJSON = Неопределено, НастройкиСериализации = Неопределено) Экспорт
Если ПараметрыЗаписиJSON = Неопределено Тогда
ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(, Символы.Таб);
КонецЕсли;
ЗаписьJSON = Новый ЗаписьJSON();
ЗаписьJSON.УстановитьСтроку(ПараметрыЗаписиJSON);
ЗаписатьJSON(ЗаписьJSON, Значение, НастройкиСериализации);
Результат = ЗаписьJSON.Закрыть();
Возврат Результат;
КонецФункции
//Аналог ПрочитатьЗначениеJSON
Функция ДанныеИзJSON(ДанныеJSON, ИзФайла = Ложь, ПрочитатьВСоответствие = Ложь, ЗначениеПоУмолчанию = Неопределено, ОписаниеОшибки = "") Экспорт
ЧтениеJSON = Новый ЧтениеJSON();
Если ИзФайла = Истина Тогда
ЧтениеJSON.ОткрытьФайл(ДанныеJSON);
Иначе
ЧтениеJSON.УстановитьСтроку(ДанныеJSON);
КонецЕсли;
Попытка
Результат = ПрочитатьJSON(ЧтениеJSON, ПрочитатьВСоответствие);
Исключение
ОписаниеОшибки = КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
Результат = ЗначениеПоУмолчанию;
КонецПопытки;
Возврат Результат;
КонецФункции
Надеюсь, кому-то еще эти методы будут полезны, а фирма 1С сделает свои методы с функциональностью не хуже, чем у моих :)