读书人

怎么使用MSXML写XML

发布时间: 2013-10-25 14:36:53 作者: rapoo

如何使用MSXML写XML?
RT。想写
<root1>
<roo2>
<XXX1>11</XXX1>
<XXX2>11</XXX2>
</root2>
</root1>
这样的XML。网上找了可以写一层的XML代码,但是我自己改为两层的就老是出错。求大神帮忙改改。下面是网上找的写一层XML代码
【转】
::CoInitialize(NULL);
MSXML2::IXMLDOMDocumentPtr XMLDOC;
MSXML2::IXMLDOMElementPtr XMLROOT;

HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument30));
if(!SUCCEEDED(HR))
{
MessageBox("faild!!");
return;
}
XMLROOT = XMLDOC->createElement("ROOT");
XMLROOT->setAttribute("ID","12345"); //设置根标签的属性;
XMLDOC->appendChild(XMLROOT);
CString TMP;
MSXML2::IXMLDOMElementPtr XMLNODE;
for(int I=0;I<10;I++)
{
TMP.Format("%d",I);
XMLNODE = XMLDOC->createElement((_bstr_t)("NODE"+TMP));
XMLNODE->put_text((_bstr_t)"NODETEXTS");//设置标签的文本内容;
XMLNODE->setAttribute("ID",(_variant_t)TMP);//设置标签的属性及内容;
XMLNODE->setAttribute("NAME","NODENAME");
XMLROOT->appendChild(XMLNODE);
}
XMLDOC->save("XMLTEST.XML");
XMLNODE.Release();
XMLROOT.Release();
XMLDOC.Release();
::CoUninitialize();
[解决办法]

引用:
感谢你的回答。但是发现没有那个XML文件出来,我还在找


save的时候指定盘符"C:\\1.xml", 就在C盘根目录下

读书人网 >C++

热点推荐