首先是获取xml文件声明。xml文件声明包括三方面的内容:Version、Standalone和Encoding。其源码如下:
/*!
* /brief 获取xml文件的声明。
*
* /param XmlFile xml文件全路径。
* /param strVersion Version属性值
* /param strStandalone Standalone属性值
* /param strEncoding Encoding属性值
* /return 是否成功。true为成功,false表示失败。
*/
bool GetXmlDeclare(std::string XmlFile,
std::string &strVersion,
std::string &strStandalone,
std::string &strEncoding)
{
// 定义一个TiXmlDocument类指针
TiXmlDocument *pDoc = new TiXmlDocument();
if (NULL==pDoc)
{
return false;
}
pDoc->LoadFile(XmlFile);
TiXmlNode* pXmlFirst = pDoc->FirstChild();
if (NULL != pXmlFirst)
{
TiXmlDeclaration* pXmlDec = pXmlFirst->ToDeclaration();
if (NULL != pXmlDec)
{
strVersion = pXmlDec->Version();
strStandalone = pXmlDec->Standalone();
strEncoding = pXmlDec->Encoding();
}
}
return true;
}
/*!
* /brief 获取xml文件的声明。
*
* /param XmlFile xml文件全路径。
* /param strVersion Version属性值
* /param strStandalone Standalone属性值
* /param strEncoding Encoding属性值
* /return 是否成功。true为成功,false表示失败。
*/
bool GetXmlDeclare(std::string XmlFile,
std::string &strVersion,
std::string &strStandalone,
std::string &strEncoding)
{
// 定义一个TiXmlDocument类指针
TiXmlDocument *pDoc = new TiXmlDocument();
if (NULL==pDoc)
{
return false;
}
pDoc->LoadFile(XmlFile);
TiXmlNode* pXmlFirst = pDoc->FirstChild();
if (NULL != pXmlFirst)
{
TiXmlDeclaration* pXmlDec = pXmlFirst->ToDeclaration();
if (NULL != pXmlDec)
{
TinyXml 查询指定节点、删除指定节点和增加节点
最新推荐文章于 2022-03-28 18:44:03 发布
这篇博客介绍了如何使用TinyXml库来获取XML文件的声明信息,并提供了获取指定节点、删除指定节点以及增加节点的函数实现。通过GetXmlDeclare函数获取XML声明,包括Version、Standalone和Encoding属性。GetNodePointerByName函数用于根据节点名查找节点,而QueryNode_Text和QueryNode_Attribute分别用于查询节点的文本和属性值。DelNode函数则用于删除指定名称的节点,包括处理根节点的特殊情况。
摘要由CSDN通过智能技术生成