ANTRK 2017-03-04 08:33 采纳率: 0%
浏览 1801
已结题

VC6.0 MFC 关于XML文件节点换行显示问题

源码如下:
CoInitialize(NULL);
// 创建文档
MSXML2::IXMLDOMDocument2Ptr pXMLDoc = NULL;
//创建DOMDocument对象
HRESULT hr = pXMLDoc.CreateInstance(__uuidof(MSXML2::DOMDocument));
if (!SUCCEEDED(hr))
{
AfxMessageBox("==1");
return;
}
// Create the Processing Instruction
MSXML2::IXMLDOMProcessingInstructionPtr pXMLProc = NULL;
pXMLProc = pXMLDoc->createProcessingInstruction("xml", "version='1.0' encoding='UTF-8'");

_variant_t vNullVal;
vNullVal.vt = VT_NULL;
pXMLDoc->insertBefore(pXMLProc, vNullVal);
// 创建根结点
_variant_t varNodeType((short)MSXML2::NODE_ELEMENT);
MSXML2::IXMLDOMNodePtr pXMLNodeRoot= NULL;
pXMLNodeRoot = pXMLDoc->createNode(varNodeType, _T("Cases"), _T(""));
// 添加根结点
pXMLDoc->appendChild(pXMLNodeRoot);
// 创建并添加下级结点
MSXML2::IXMLDOMNodePtr pXMLNodeNode= NULL;
pXMLNodeNode = pXMLNodeRoot->appendChild(pXMLDoc->createElement(_T("Case")));
// 创建下级元素结点
MSXML2::IXMLDOMElementPtr pXMLEle = NULL;
pXMLEle = pXMLDoc->createElement(_T("CopyFile"));
// 创建并设置下级结点属性
MSXML2::IXMLDOMAttributePtr pXMLAttr = NULL;
pXMLAttr = pXMLDoc->createAttribute(_T("src"));
pXMLAttr->nodeTypedValue = "C:\test.txt";
pXMLEle->attributes->setNamedItem(pXMLAttr);
pXMLAttr = pXMLDoc->createAttribute(_T("dest"));
pXMLAttr->nodeTypedValue = "D:\Test.txt";
pXMLEle->attributes->setNamedItem(pXMLAttr);
// 添加元素结点
pXMLNodeNode->appendChild( pXMLEle);
MSXML2::IXMLDOMElementPtr pXMLEle1 = NULL;
pXMLEle1 = pXMLDoc->createElement(_T("DelFile"));
pXMLEle1->appendChild(pXMLDoc->createTextNode("C:\test.txt"));
// 添加元素结点
pXMLNodeNode->appendChild( pXMLEle1);

// 保存文档
pXMLDoc->save(_T("\Test.xml"));

问题:生成的Test.xml中的信息用 记事本 或者 UltraEdit 打开 是在一行显示的,如下:
图片说明

  • 写回答

3条回答 默认 最新

  • oyljerry 2017-03-04 08:50
    关注

    这个取决于XML类库的实现。可以用pugixml等类库。支持格式好

    评论

报告相同问题?

悬赏问题

  • ¥15 iOS 自定义输入法-第三方输入法
  • ¥15 很想要一个很好的答案或提示
  • ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
  • ¥15 怀疑手机被监控,请问怎么解决和防止
  • ¥15 Qt下使用tcp获取数据的详细操作
  • ¥15 idea右下角设置编码是灰色的
  • ¥15 全志H618ROM新增分区
  • ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
  • ¥15 NAO机器人的录音程序保存问题
  • ¥15 C#读写EXCEL文件,不同编译