Преобразование даты json в 1с

Нужно чтобы дата в файле json читалась в 1с

Как сделать то ли преобразование даты в строку, то ли чтобы она читалась

Чтение JSON через обработку

&НаСервере
Процедура ПрочитатьФайл_JSON_Последовательно()
    
    Объект.СписокЛюдей.Очистить();
    
    СоответствиеПолей = Новый Соответствие;
    СоответствиеПолей.Вставить("family", "Фамилия");
    СоответствиеПолей.Вставить("name", "Имя");
    СоответствиеПолей.Вставить("surname", "Отчество");
    СоответствиеПолей.Вставить("date_of_birth", "ДатаРождения");  
    
    
    ЧтениеJSON = Новый ЧтениеJSON();
    ЧтениеJSON.ОткрытьФайл(Объект.ПутьКФайлу);  
    
    ИмяТекущегоСвойства = "";
    Пока ЧтениеJSON.Прочитать() Цикл 
        
        ТипJSON = ЧтениеJSON.ТипТекущегоЗначения;
        
        Если ТипJSON = ТипЗначенияJSON.НачалоОбъекта Тогда
            СтрокаТЧ = Объект.СписокЛюдей.Добавить();
        ИначеЕсли ТипJSON = ТипЗначенияJSON.ИмяСвойства Тогда
            ИмяТекущегоСвойства = ЧтениеJSON.ТекущееЗначение;  
        ИначеЕсли ТипJSON = ТипЗначенияJSON.Строка ИЛИ ТипJSON = ТипЗначенияJSON.Число
            ИЛИ ТипJSON = ТипЗначенияJSON.Булево ИЛИ ТипJSON = ТипЗначенияJSON.Null Тогда
            
            ИмяРеквизитаТЧ = СоответствиеПолей.Получить(ИмяТекущегоСвойства);
            Если ИмяРеквизитаТЧ <> Неопределено Тогда    
                
                Если ИмяТекущегоСвойства = "date_of_birth" Тогда
                    
                    СтрокаТЧ[ИмяРеквизитаТЧ] = Формат(ЧтениеJSON.ТекущееЗначение,"ДЛФ=D" );   
                    
                КонецЕсли;
                    СтрокаТЧ[ИмяРеквизитаТЧ] = ЧтениеJSON.ТекущееЗначение;
            КонецЕсли;
        КонецЕсли;
        
        
    КонецЦикла;
    
    
    
    ЧтениеJSON.Закрыть();       
    
КонецПроцедуры



Ответы (1 шт):

Автор решения: Sagittarius

Вместо последовательного чтения гораздо удобнее сразу конвертировать данные методом "ПрочитатьJSON()". Третьим параметром указывается список свойств, содержащих дату, чтобы она была конвертирована в формат 1С.

&НаСервере
Процедура ПрочитатьФайл_JSON()
        
    Объект.СписокЛюдей.Очистить();
    
    ЧтениеJSON = Новый ЧтениеJSON();
    ЧтениеJSON.ОткрытьФайл(Объект.ПутьКФайлу);
    
    Данные = ПрочитатьJSON(ЧтениеJSON, Ложь, "date_of_birth");
    
    ЧтениеJSON.Закрыть();
    
    Для каждого Элемент Из Данные Цикл
        
        НоваяСтрока = Объект.СписокЛюдей.Добавить();
        НоваяСтрока.Фамилия = Элемент.family;
        НоваяСтрока.Имя = Элемент.name;
        НоваяСтрока.Отчество = Элемент.surname;
        НоваяСтрока.ДатаРождения = Элемент.date_of_birth;
        
    КонецЦикла;
    
КонецПроцедуры
→ Ссылка