работа с XML на CPP

Ответить
Аватара пользователя
Vlad Drakula

работа с XML на CPP

Сообщение Vlad Drakula »

как таботать с данными файлами?
Аватара пользователя
ivank

Re: работа с XML на CPP

Сообщение ivank »

Vlad Drakula

Есть такие штуки как DOM и SAX парсеры. Искать в гугле. Под виндой модно MSXML (искать в мсдн), под *никсами libxml и Xerces, искать гуглом. И ещё десятки и сотни других парсеров.



Ещё есть одна прога/либа, к сожалению забыл название, но не суть. Так вот скармливаешь ей DTD XML-ек, которые предстоит разбирать и на выходе имеешь кучку классов с ф-иями вида get_XXX, set_XXX, которые один в один отображают структуру XML-файла. К этому, разумеется, генерятся ф-ии парсинга/сериализации из/в XML.



XML - всего лишь текст, если хочешь можешь хоть регэкспами его править/разбирать Изображение Я когда был молодой и глупый (т.е. практически такой же как сейчас) сам писал разборщик XML-like конфигов, на всё про всё (т.е. с отладкой) ушло около двух часов. Разбиралось всё это дело в дерево, приблизительно такого формата:



Код:

Код: Выделить всё

struct Node
{
   std::map children;
   std::map attributes;
   Node(const std::string & xml);
};

Добавлено:




Цитата:



десятки и сотни других парсеров.



Десятки и десятки, я хотел сказать.
Ответить

Вернуться в «Программирование и базы данных»