Заголовок баннера

СКИДКА -10%
Текст баннера Осталось 38 днів!

[Инфостарт] Разбор XML документа - почти все возможные способы (2025)

Автор: san4iz
Создано: 29.05.2025 11:34
Просмотров: 8
[Инфостарт] Разбор XML документа - почти все возможные способы (2025)
ОПИСАНИЕ:

Слив курса Разбор XML документа - почти все возможные способы [Инфостарт]

К вам пришел XML документ, как получить из него данные для обработки в 1С. ЧтениеXML, ДокументDOM, XPath, ФабрикаXDTO, ПакетыXDTO в сравнении.

При обмене данными, как бы он не производился ( через файлы, через HTTP запросы или еще каким либо другим путем ) все равно основным форматом обмена является XML. В 1С существует несколько способов обработки XML документов – какой из них выбрать по критерию логической простоты и быстродействия? Для практической проверки различных методов был создан XML документ вида.

Задачей всех проверяемых методов было получение из XML файла массива, состоящего из структур со свойствами Номер, Дата, Поставщик, Состав, причем свойство Состав само является массивом структур со свойствами Номенклатура и Количество.

1) Первый метод – простое последовательное чтение XML.

Текущее положение в XML документе отслеживается в переменной ТекущийПуть и при поступлении текстового узла на основании этой переменной заполняются (или игнорируются) соответствующие данные 1С. Конечно, не совсем корректно оценивать логическую сложность программы в строках исходного текста, но тем не менее это самый большой объем из всех методов - 64 строки. Что касается быстродействия (оно проверялось на компьютере памятью в 8 Гб и процессором Intel i7 2.2 Ггц, было создано два файла один на 10 тысяч записей объемом 10 мегабайт, другой на 100 тысяч и 100 мегабайт соответственно) , то на файле 10 000 записей полная обработка заняла 30 секунд и на файле в 100 мегабайт линейно увеличилась в 10 раз.

2) Второй метод – получение из XML файла документа DOM и последовательный перебор всех узлов полученного документа

Логически этот метод весьма незначительно проще прямого ЧтенияXML (57 строк кода против 62), а вот с быстродействие картина интересная: для файла в 10 тысяч записей быстродействие составило 12 секунд (быстрее более чем в два раза) , но для файла со 100 тысячами записей резко поднялась до 1000 секунд (медленнее более чем в три раза).

3) Третий метод подобен второму, но вместо последовательного перебора узлов применен отбор требуемых узлов в DOM документе с помощью выражений XPath .

Этот метод немного проще чем простой перебор узлов в DOM документе, но быстродействие …

При 10 000 записей 69 секунд , а для 100 000 обработка длилась более часа, так и не завершилась, после чего была снята принудительно....
Для просмотра содержимого вам необходимо авторизоваться

Скачать курс - [Инфостарт] Разбор XML документа - почти все возможные способы (2025)

Для доступа к скачиванию вам необходимо авторизоваться

Комментарии 0

Пока нет комментариев. Будьте первым, кто оставит комментарий!
Чтобы оставить комментарий, войдите или зарегистрируйтесь.