为什么用XML接口来写xml还会出现不完整的元素?

蒋晟 蒋晟 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
生成的文档:
<?xml version="1.0" encoding="gb2312" standalone="yes"?>
<FLEXREPORT><PAGE/></FLEXREPORT>
代码:
BOOL CFlexReportDoc::SaveToXMLDocument(LPCTSTR lpszPathName)
{
CFlxRptPage pageDefault;
GetDefaultsPageSetting(pageDefault);//get default setting
//if setting==property,skip attribute

HRESULT hr ;
CXMLDOMDocument2 pXMLDOMDocument2;
//
// Create an empty XML document.
//
try{
if(!pXMLDOMDocument2.CreateDispatch("Msxml2.DOMDocument.4.0"){
AfxMessageBox("Unable to create XML parser object");
return FALSE;
}
pXMLDOMDocument2.SetAsync(FALSE);
TRACE("Xml:%s\n",pXMLDOMDocument2.GetXml());
//output:Xml:
CXMLDOMElement pXmlElement=pXMLDOMDocument2.createProcessingInstruction(
"xml","version='1.0' encoding='gb2312' standalone='yes'");
pXMLDOMDocument2.appendChild(pXmlElement);
TRACE("Xml:%s\n",pXMLDOMDocument2.GetXml());
//output:Xml:<?xml version="1.0" standalone="yes"?>

CXMLDOMElement pRootElement=pXMLDOMDocument2.createElement("FLEXREPORT");
pXMLDOMDocument2.appendChild(pRootElement);


TRACE("Xml:%s\n",pXMLDOMDocument2.GetXml());
//output:Xml:<?xml version="1.0" standalone="yes"?><FLEXREPORT/>

CXMLDOMElement pPageElement=pXMLDOMDocument2.createElement("PAGE");
pRootElement.appendChild(pPageElement);
TRACE("Xml:%s\n",pXMLDOMDocument2.GetXml());
//output:Xml:<?xml version="1.0" standalone="yes"?><FLEXREPORT><PAGE/></FLEXREPORT>

_variant_t varString = lpszPathName;
pXMLDOMDocument2.save(varString);
}
catch(COleDispatchException*e){
e->ReportError();
e->Delete();
}

return TRUE;
}
...全文

相关推荐

评论 16
收藏 已收藏
分享
返回顶部
蒋晟
HTML/XML 3,056 成员 8,075 内容