![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
becks |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 165 Регистрация: 6.7.2010 Репутация: нет Всего: нет |
Добрый день! Использую TinyXML для работы с XML-ками. И обнаружил, что метод LoadFile() чертовски медленный. Я понимаю, что речь идет о DOM парсере, но загружать xml размером 1.5 Мб за 4-5 сек. , это слишком долго. Есть подозрение, что во время подгрузки файла, он проверяет документ на валидность... В документации не нашел.
Кто сталкивался, подскажите. Спасибо. |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
becks, TinyXML это очень маленький и простой парсер. Он предназначен для простых случаев. У тебя не такой. Меняй парсер.
|
|||
|
||||
becks |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 165 Регистрация: 6.7.2010 Репутация: нет Всего: нет |
Что посоветуете? До этого пробовал expat (даже вопрос по нему тут задавал ) вроде разобрался и быстрый он, но коллега сказал, что на его xml-ке (67 Мб.) после прохождения половины, парсер не правильно читает данные. Может, конечно, проблема в коллеге ). |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 60 Всего: 223 |
На TinyXML задолго до 'прохождения половины' все встанет колом, так что 'не правильно читает данные' - это надо считать за счастье ![]() Тут явно нужен парсер типа SAX, StAX или другой потоковый. Но никак не DOM |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Кажется, таким является libxml2
|
|||
|
||||
becks |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 165 Регистрация: 6.7.2010 Репутация: нет Всего: нет |
TinyXML, по словам опять же моего коллеги, разобрал его 67 Мб xml за 10 сек (тогда вопрос почему мою 1.5 Мб xml он разбирает 5 сек.), чуть меньше понадобилось expat, но он справился с ошибками. Тут, конечно, возникает куча вопросов, как так... Может быть мой коллега чего-то не так делает... Это сообщение отредактировал(а) becks - 7.2.2012, 09:43 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |