Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   работа с XML на CPP (http://forum.oszone.net/showthread.php?t=30044)

Vlad Drakula 13-01-2004 20:07 206907

как таботать с данными файлами?

ivank 14-01-2004 00:49 206908

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

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

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

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

Добавлено:

Цитата:

десятки и сотни других парсеров.
Десятки и десятки, я хотел сказать.


Время: 14:51.

Время: 14:51.
© OSzone.net 2001-