C++ tinyXML使用

tinyXML下载:

http://sourceforge.net/projects/tinyxml/

加载到项目:

这六个文件添加到你的c++工程中,分别是tinystr.h、tinystr.cpp、tinyxml.h、tinyxml.cpp、tinyxmlerror.cpp、tinyxmlparser.cpp

添加头文件

#include "tinyxml.h"

使用:

_bstr_t errorWords;

TiXmlDocument pXmlDoc;

TiXmlDeclaration pDeclaration;
pDeclaration.Parse( "", 0, TIXML_ENCODING_UNKNOWN );//插入头
pXmlDoc.InsertEndChild(pDeclaration);
TiXmlElement xElement("proof-result");
TiXmlElement errorElement("error-result");

TiXmlElement errorLevelElement("error");
errorLevelElement.SetAttribute("level",szLevel);//设置节点属性
TiXmlText  levelText(m_pCheckResult[i].ErrWord);
levelText.SetCDATA(true);//设置DATA属性
errorLevelElement.InsertEndChild(levelText);
errorElement.InsertEndChild(errorLevelElement);
TiXmlElement replaceElement("replace");

TiXmlText  replaceText(errorWords);
replaceText.SetCDATA(true);
replaceElement.InsertEndChild(replaceText);//插入文本
errorElement.InsertEndChild(replaceElement);
TiXmlElement positionElement("position");

TiXmlText  szLevelText(errorWords);
positionElement.InsertEndChild(szLevelText);
errorElement.InsertEndChild(positionElement);
TiXmlElement source_sentenceElement("source_sentence");
TiXmlText  sentenseText(sentense);
sentenseText.SetCDATA(true);
source_sentenceElement.InsertEndChild(sentenseText);
errorElement.InsertEndChild(source_sentenceElement);
xElement.InsertEndChild(errorElement);

TiXmlElement leader_sort_errorsElement("leader_sort_errors");
leader_sort_errorsElement.SetAttribute("count",szCount);
TiXmlText  szLeaderBufferText((const char*)szLeaderBuffer);
szLeaderBufferText.SetCDATA(true);
leader_sort_errorsElement.InsertEndChild(szLeaderBufferText);
xElement.InsertEndChild(leader_sort_errorsElement);

pXmlDoc.InsertEndChild(xElement);//插入根节点

//获得生成的xml字符串
TiXmlPrinter printer;
printer.SetStreamPrinting();
pXmlDoc.Accept( &printer );
_bstr_t bstrOutPutSentense(printer.CStr());

其他:

可以查看tinyXML自带的文档

你可能感兴趣的:(C++ tinyXML使用)