Анализ структуры файлов XML

Опубликовал A X (ditp) в раздел Обмен - Обмен через XML

Универсальная обработка, выбирающая все элементы и атрибуты xml-файла, и представляющая их в единственном экземпляре.

Добрый день!

На одном из сооседних бложиков прочитал, какие мучения претерпевали некие разработчики, грузящие в текстовый редактор многомегабайтные xml файлы для анализа.

Решил поделиться своим инструментом для подобных задач.

Итак: на вход подается xml-файл, из него выбираются все элементы и атрибуты, но - в единственном экземпляре.

Т.е., вместо 100500 элементов типа "Номенклатура" мы увидим всего один, но у него будут перечислены все возможные для этих элементов атрибуты и подчиненные элементы, для которых будут приведены примеры их заполнения.

Разбираться в структуре на таком примере гораздо проще.

Данные грузятся в дерево, также есть возможность сохранить результат анализа в виде отдельного xml-файла.

К примеру, довольно сложный по структуре xml в 15 Мб так можно превратить в гораздо более читабельный 30 Кб файлик.

Скачать файлы

Наименование Файл Версия Размер
Анализ структуры XML
.epf 13,62Kb
21.08.15
24
.epf 13,62Kb 24 Скачать

См. также

Комментарии
1. Rom Shpakoff (Lancelot-2M) 91 21.08.15 16:42 Сейчас в теме
И работать это будет вечность)) - для гиговых файлов на платформе 1С. Всем советую first object XML editor - работает с действительно большими файлами)
2. A X (ditp) 43 21.08.15 16:49 Сейчас в теме
(1) Lancelot-2M, время загрузки - примерно 1 секунда на мегабайт исходного xml.
Тестировал на xml в 120-150 мб.
3. Rom Shpakoff (Lancelot-2M) 91 21.08.15 16:53 Сейчас в теме
(2) ditp, чем читаете? и характеристика перестает быть линейной с ростом количества элементов в дереве...
4. A X (ditp) 43 21.08.15 16:54 Сейчас в теме
(3) Lancelot-2M, нет.
С чего бы ей быть нелинейной?

Поправка: время загрузки линейно зависит от количества элементов в исходном xml, но практически не зависит от количества элементов в дереве.
Разумеется, можно представить гипотетический файл, состоящий полностью из различных элементов, там могут быть проблемы, когда каждый элемент уникальный и его нужно добавить в дерево.
Но на практике, файлы состоят все таки из более-менее однотипных элементов.