Имя: Пароль:
1C
 
Как прочитать файл типа json ?
0 AndrVik
 
07.05.21
09:54
Есть сторонняя база - не 1С. Она выгружает данные в структуре json. формат TXT, кодировка ANSI или Unicod.
Как можно его прочитать ?
Есть ли примеры ?
1 mikecool
 
07.05.21
09:55
ЧтениеJSON
2 AndrVik
 
07.05.21
09:55
Пример кода из файла

{"documents":[{"IDDOC":31829,"NOMERDOC":"21\\\u0420\u0415-30553","DTDOC":"2021-05-05T00:00:00.000Z","IDPST":null,"NAME_PST":"","IDTIP":206,"NAME_TIP":"\u0418\u0437\u0433\u043E\u0442\u043E\u0432\u043B\u0435\u043D\u0438\u0435 \u041A\u043E\u043D\u0441\u0442\u0440. \u041F\u0412\u0425","FLG":1,"NAME_FLG":"\
3 AndrVik
 
07.05.21
09:57
(1)никогда не работал, увы. Где бы почитать и пример ы увидеть
4 AndrVik
 
07.05.21
09:58
начну с простого.

ЧтениеJSON = Новый ЧтениеJSON;
ЧтениеJSON.УстановитьСтроку(Данные);  

А как эти данные из файла подпихнуть ?
5 Fragster
 
гуру
07.05.21
09:58
точно также, как с чтением XML, но начальный объект - чтениеJSON. Ну и удобный метод "ПрочитатьJson", описанный в синтакс помощнике.
6 Fragster
 
гуру
07.05.21
09:59
(4) там кроме УстановитьСтроку другие методы есть
7 ДенисЧ
 
07.05.21
09:59
(4)
чтение = Новый ЧтениеJSON;
чтение.УстановитьСтроку(тут строка из твоего файла, целиком)
результат = ПрочитатьJSON(чтение, Истина)

В результат - будет соответствие с твоими данными
8 AndrVik
 
07.05.21
10:02
А как быть если в файле несколько документов. В теории должно быть деревья ?
9 AndrVik
 
07.05.21
10:03
(7)спасибо
10 Kassern
 
07.05.21
10:03
11 dmt
 
07.05.21
10:25
Функция ИзJSON(Значение, ВСоответствие=Истина, этоПутьКФайлу=Ложь) Экспорт
    
    чтение = Новый ЧтениеJSON;
    Если этоПутьКФайлу Тогда
        чтение.ОткрытьФайл(Значение);
    Иначе
        чтение.УстановитьСтроку(Значение);
    КонецЕсли;
    
    рез = ПрочитатьJSON(чтение, ВСоответствие);
    
    чтение.Закрыть();
    
    Возврат рез;
        
КонецФункции
12 tmk315
 
07.05.21
10:47