c++读写XML-------tinyxml

老子叫甜甜 提交于 2019-11-26 15:22:26

   读取xml在我们编程的过程中是非常常用的,无论是在java,还是在C++中都应用到xml文件的读写,由于xml是一组键值对的文件,具有很强的扩展性。所以在开发过程中大家比较喜欢用xml来保存数据。接下来,我来讲的是C++对于xml文件的读写。首先需要下载一下tinyxml。因为这个是网上大家都在使用的C++读写xml文件的,并且封装的不错。接下来我就讲讲tinyxml的使用说明。

  在TinyXML中,根据XML的各种元素来定义了一些类:                                                            TiXmlBase:整个TinyXML模型的基类。                                                            TiXmlAttribute:对应于XML中的元素的属性。                                                                          TiXmlNode:对应于DOM结构中的节点。                                                                  TiXmlComment:对应于XML中的注释。                                                                        TiXmlDeclaration:对应于XML中的申明部分,即<?versiong="1.0" ?>。                                                                                 TiXmlDocument:对应于XML的整个文档。                                                                                                  TiXmlElement:对应于XML的元素。                                                                                               TiXmlText:对应于XML的文字部分。                                                                                                         TiXmlUnknown:对应于XML的未知部分。                                                                              TiXmlHandler:定义了针对XML的一些操作。

  TinyXML是个解析库,主要由DOM模型类(TiXmlBase、TiXmlNode、TiXmlAttribute、TiXmlComment、TiXmlDeclaration、TiXmlElement、TiXmlText、TiXmlUnknown)和操作类(TiXmlHandler)构成。它由两个头文件(.h文件)和四个CPP文件(.cpp文件)构成,用的时候,只要将(tinyxml.h、tinystr.h、tinystr.cpp、tinyxml.cpp、tinyxmlerror.cpp、tinyxmlparser.cpp)导入工程就可以用它的东西了。

  使用:                                                                                               写:                                                                                                                                          TiXmlDocument* document = new TiXmlDocument();          //创建文档                                                                      TiXmlElement* rootElement = new TiXmlElement("Persons");     //创建根节点                                                                  document->linkEndChild(rootElement);               //连接节点                                                                                                                                                                             TiXmlElement* nameElement = new TiXmlElement("name");                                                                         rootElement->linkEndChild(nameElement);                                                                                                                                     TiXmlText* nameText = new TiXmlText("Brave Heart");                                                    nameElement-linkEndChild(nameText);                                                                                                                     TiXmlElement* ageElement = new TiXmlElement("age");                                                                         rootElement->linkEndChild(ageElement);                                                                                                                                     TiXmlText* ageText = new TiXmlText("0");                                                    nameElement->linkEndChild(ageText);                                                         document->SaveFile("D:/1.xml");                                                                                                                                                                                                                                                                                      

转载于:https://www.cnblogs.com/qzkBlog/archive/2012/07/29/2614319.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!