在vc中
怎么将
<book name = "first">
<book name = "second">
加入到XML文件中呢!
我现在只能加入第二个,也就是说第一个被覆盖了!---------------------------
谁有这方面的例子!发个!(MSDN上的函数不知用哪个!对着例子学的比较快!)
怎么将
<book name = "first">
<book name = "second">
加入到XML文件中呢!
我现在只能加入第二个,也就是说第一个被覆盖了!---------------------------
谁有这方面的例子!发个!(MSDN上的函数不知用哪个!对着例子学的比较快!)
参照:http://www.diybl.com/course/3_program/c++/cppsl/20071119/87074.html
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;int main()
{
XmlDocument* doc = new XmlDocument();
doc->LoadXml(S"<book genre='novel' ISBN='1-861001-57-5'>"
S"<title>Pride And Prejudice</title>"
S"</book>"); XmlNode* root = doc->DocumentElement; //Create a new node.
XmlElement* elem = doc->CreateElement(S"price");
elem->InnerText=S"19.95"; //Add the node to the document.
root->InsertAfter(elem, root->FirstChild); Console::WriteLine(S"Display the modified XML...");
doc->Save(Console::Out);
}
msdn上的例子,参考
MSXML2::IXMLDOMDocumentPtr pDoc;
MSXML2::IXMLDOMElementPtr xmlRoot ;
//创建DOMDocument对象
HRESULT hr = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument30));
if(!SUCCEEDED(hr))
{
MessageBox("无法创建DOMDocument对象,请检查是否安装了MS XML Parser 运行库!");
return ;
}
xmlRoot = pDoc -> createElement((_bstr_t)rootNode.GetBuffer(rootNode.GetLength()));
// 设置属性
//xmlRoot -> setAttribute( "id" ,"shit");
pDoc -> appendChild(xmlRoot);
MSXML2::IXMLDOMElementPtr pNode;
MSXML2::IXMLDOMElementPtr pNodeSec;
// 添加“author”元素
pNode = pDoc -> createElement((_bstr_t) "book" );
pNode ->Puttext("Fuck");
pNode->setAttribute("name", "北京欢迎你");
pNode->setAttribute("songer", "成龙");
xmlRoot -> appendChild(pNode);
//pNode -> Puttext((_bstr_t)"Fuck");
/*pNodeSec = pDoc->createElement((_bstr_t)"name");
pNodeSec -> Puttext((_bstr_t)"Fuck");
pNode -> appendChild(pNodeSec);*/
// 添加“Title”元素
pNode = pDoc -> createElement( "book" );
pNode -> Puttext("艹");
pNode->setAttribute("name", "see you");
pNode->setAttribute("songer", "sharela");
xmlRoot -> appendChild(pNode); // 保存到文件
// 如果不存在就建立,存在就覆盖
pDoc -> save( "shit.xml " );