Как выполнить итерацию XML-файла и сохранить его на карте - PullRequest
0 голосов
/ 11 июля 2011

Как перебрать файл с использованием rapidXml и сохранить его на карте ... Что-то вроде создания словаря с использованием содержимого файла.Я пробовал это, но я могу получить только первый уровень пар ключ-значение, а не внутренние уровни.

typedef map <string, string> MapType;
  MapType                 mProfiles;
        mXmlDocument.parse<parse_full>(&xml_copy[0]);

        for (xml_node<> *node = mXmlDocument.first_node();
             node; node = node->next_sibling())
        {
            mProfiles[node->name()] = node->value();
        }

1 Ответ

0 голосов
/ 11 июля 2011

Помимо значения узла, также проверьте тип. Если тип rapidxml:::node_element или rapidxml:::node_document, у него могут быть дети.

См. Функцию-член rapidxml::print_node в rapidxml_print.hpp.

...