Подскажите парер XML для C++ для разбора больших файлов (1Гб+)

Нужно чтобы парсер не загружал в память весь файл, а читал его постепенно. Чем стандартнее библиотека тем лучше. Т.е. если что-то такое есть в стандартных библиотеках STL или Boost, то вообще идеально, если нет, то может быть какие-то более менее стандартные библиотеки для Linux умеют это делать. И еще должен работать быстро.
  • Вопрос задан
  • 3821 просмотр
Пригласить эксперта
Ответы на вопрос 5
mejedi
@mejedi
Любой SAX парсер подойдет.
Ответ написан
becks
@becks
Ищите по запросу SAX-парсер. На ум приходит Xerces, expat, но много всяких.
Ответ написан
Biga
@Biga
Есть ещё libxml2 на C, он умеет SAX. Достаточно стандартен для линукса. Насчёт скорости не знаю.
Ответ написан
deemytch
@deemytch
linux root, ruby/perl programmer, sql, backend.
Сильно зависит от задачи.
Если цель — разобрать все и потом долго ковыряться — то конечно, либа типа SAX, наиболее часто встречающийся вариант — libxml2.
Если же цель найти что-то конкретное, то быстрее всего imho — построчная обработка регулярками.
Ответ написан
Ivaneo
@Ivaneo
Возможно pugixml вам подойдет.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы