如何迭代xml文件并将其存储在map中

How to iterate an xml file and store it in map

本文关键字:存储 map 文件 何迭代 迭代 xml      更新时间:2023-10-16

如何使用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();
        }

除了节点的值,还要检查类型。如果类型为rapidxml:::node_elementrapidxml:::node_document,则可能有子节点。

参见rapidxml_print.hpp中的成员函数rapidxml::print_node