1. 导入MSXML.dll
#import "msxml3.dll"
using namespace MSXML2;
2. 创建实例
IXMLDOMDocumentPtr pXMLDoc; //XML文档
HRESULT hr = pXMLDoc.CreateInstance(__uuidof(MSXML2::DOMDocument30));
if (!SUCCEEDED(hr))
return FALSE;
3. 加入XML版本信息
IXMLDOMProcessingInstructionPtr pPi = pXMLDoc->createProcessingInstruction((_bstr_t)"xml", (_bstr_t)"version='1.0'");
if (pPi)pXMLDoc->appendChild(pPi);
4.创建节点,添加节点属性,插入节点
IXMLDOMElementPtrXMLColWidthNode = pXMLDoc->createElement((_bstr_t)"ColumnWidth");
if (XMLColWidthNode == NULL)
return FALSE;
((IXMLDOMElementPtr)XMLColWidthNode)->setAttribute((_bstr_t)"description", (_bstr_t)(LPCTSTR)"列宽设置");
XMLRootNode->appendChild(XMLColWidthNode);
5. 插入换行
IXMLDOMTextPtr XMLTextNode = pXMLDoc->createTextNode((_bstr_t)"\n\t\t");
XMLColWidthNode ->appendChild(XMLTextNode);
6. 保存文档
pXMLDoc->save((_bstr_t)(LPCTSTR)strFullPath);
7.导入文档
pXMLDoc->Load((_bstr_t)(LPCTSTR)strFullPath);
8. 转换为Text文本
_bstr_t bstrText = pXMLDoc->Getxml();
9. 导入Text文本
pXMLDoc->loadXML((_bstr_t)bstrText );
10.其他
GetchildNodes 获得所有子节点
GetnodeName 获取节点名称
Gettext 获得节点字符串