C++ XML文件讀寫庫tinyxpath

  1. 支持從1個xml文件的某節點加到另一個xml文件某節點;
  2. 支持xpath,關於xpath語法查看:https://www.w3school.com.cn/xpath/xpath_syntax.asp ,及例子代碼tinyxpath>main.cpp(見源碼)。
  3. 它包含了tinyxml,是tinyxml的超集,有關tinyxml的操作可網上查閱資料。
  4. 一個利用XPath,拷貝整個節點到另一個xml的示例:
#include  "tinyxml.h"
#include "xpath_static.h"
//...
void InsertNodes(TiXmlDocument* doc, TiXmlDocument* docCopyFrom)
{
	//增加到Site節點下
	TiXmlNode* pSiteNode = TinyXPath::XNp_xpath_node(doc->RootElement(), "/TriForma/Parts/PartFamily[@name=\"Site\"]");
	TiXmlNode* copyNode_site1 = TinyXPath::XNp_xpath_node(
		docCopyFrom->RootElement(), "/TriForma/Parts/PartFamily[@name=\"Site\"]/Part[@name=\"Cobblesand\"]"); 
	TiXmlNode* copyNode_site2 = TinyXPath::XNp_xpath_node(
		docCopyFrom->RootElement(), "/TriForma/Parts/PartFamily[@name=\"Site\"]/Part[@name=\"Concreteaproll\"]");
	pSiteNode->InsertEndChild(*copyNode_site1);
	pSiteNode->InsertEndChild(*copyNode_site2);
}

tinyxpath源碼下載地址:https://sourceforge.net/projects/tinyxpath/files/TinyXPath%20%28windows%20-%20zip%29/

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章