Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.04.01;
Скачать: CL | DM;

Вниз

XML-файлы большого размера   Найти похожие ветки 

 
Dok_3D ©   (2002-03-19 07:28) [0]

У меня вопрос такой, кто-нибудь пробовал реально работать с большими XML-файлами (свыше 40 Мегабайт) достаточно сложной структуры ?

Допустим, просто рекурсивно пробежаться по всей структуре элементов. Насколько это быстро ?


 
Dok_3D ©   (2002-03-19 13:55) [1]

Ммммда ...


 
Дмитрий ©   (2002-03-19 14:46) [2]

Работал с ~ 3-4 мб, и скорость зависти от парсера. Они бывают (это моя терминология :) - "умные" и "не очень". Умный парсер, типа MSXML, грузит весь документ, проверяет его на велл-формедность, сверяет с DTD, заменяет всякие там сучности, и строит внутреннее дерево. Вот это последнее действие и является критичным :) Начинает жужжать винтом, свопить и т.п. Парсеры "попроще" (Perl XML::Parser) - событийные (встретил token - вызвал обработчик события), к ресурсам не столь требовательны.


 
Dok_3D ©   (2002-03-19 15:55) [3]

Понятно,
я тут вообще-то сам уже эмуляцию огромного файла состроил (40 Мегов).
При помощи msxml4 побегал по нему вперед-назад-вглубь-вширь. Правда без ссылок на DTD или XSD.
Память, конечно, жрет, но навигация в принципе быстрая.



 
alexandervasjuk ©   (2002-03-19 17:04) [4]

Там у него (msxml3 & 4) есть так называемый SAX доступ. Он именно в терминологии Дмитрия делает парсер из умного не очень умного, т.е. событийный. Не столь удобный (события обрабатываешь ты сам), но нересурсоемкий. Детально описан в Help"е.



Страницы: 1 вся ветка

Текущий архив: 2002.04.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
1-233
Ольга
2002-03-18 16:24
2002.04.01
Outlook


14-283
valler
2002-02-17 00:22
2002.04.01
У кого есть файл Proxies.pas?


1-242
ghost_by
2002-03-06 20:20
2002.04.01
Показать Hint ы в StringGride


14-288
Knight
2002-02-12 18:05
2002.04.01
Прогу исчу... Не подскажете наилучшейшую?


1-229
masterdim
2002-03-20 15:20
2002.04.01
изменение свойства у компонента TButton