Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/151.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何迭代xml文件并将其存储在映射中_C++_Xml_Rapidxml - Fatal编程技术网

C++ 如何迭代xml文件并将其存储在映射中

C++ 如何迭代xml文件并将其存储在映射中,c++,xml,rapidxml,C++,Xml,Rapidxml,如何使用rapidXml迭代文件并将其存储在地图中。。。类似于使用文件的内容创建字典。我已经试过了,但是我只能得到键值对的第一层,而不能得到内部层 typedef map <string, string> MapType; MapType mProfiles; mXmlDocument.parse<parse_full>(&xml_copy[0]); for (xml_node<>

如何使用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_元素或rapidxml:::node_文档,则它可能有子元素

请参见rapidxml_print.hpp中的成员函数rapidxml::print_节点