xml获取的节点名字不正确 - VC/MFC / 基础类
需要用到读取xml文件,获取参数。
从网上下载一个xml读取程序,但是他获取的节点的名字不正确,他获取的节点名字都是“#text”:
#include "stdafx.h"
#include <iostream>
using namespace std;
#include <msxml.h>
#include <atlstr.h>
#import "msxml.dll" raw_interfaces_only
int _tmain(int argc, _TCHAR* argv[])
{
::CoInitialize(NULL);
CComPtr<MSXML::IXMLDOMDocument> spDoc;
HRESULT hr = spDoc.CoCreateInstance(__uuidof(MSXML::DOMDocument)); //创建文档对象
VARIANT_BOOL bFlag;
//hr = spDoc->load(CComVariant(L"BitComet.xml"), &bFlag); //load xml文件
hr = spDoc->load(CComVariant(L"simple.xml"), &bFlag); //load xml文件
//hr = spDoc->load(CComVariant(L"example.xml"), &bFlag); //load xml文件
CComPtr<MSXML::IXMLDOMElement> spElement;
hr = spDoc->get_documentElement(&spElement); //获取根结点
CComBSTR strTagName;
hr = spElement->get_tagName(&strTagName);
wcout << "------TagName------" << endl;
wcout <<(LPCTSTR) CString(str
相关问答:
内容如题。。在C#里改如何写呢?
本来思路是先比对节点名称,如是的话就保存要删除节点的下标放在数组里。然后循环删除,但发现。。当我删除第一个后,所有节点下标数量都发生改变。。
就不能再按照之前纪录的节点 ......
如何用ATL窗体应用程序中用System.Xml遍历一个Xml文件
你说的是托管代码?
。
vc可用msxml
http://msdn.microsoft.com/en-us/library/ms767594(VS.85).aspx
MSXML4
//引入msxml4.dll &nbs ......
我用XmlDocument生成XML
XmlElement remarkNode = node.OwnerDocument.CreateElement("remark");
remark1Node.InnerXml = "";
如果InnerXml赋值不为空,则生成的标记是没问题的,比如:<r ......
先上代码
public override string SerializeToXml(object objArg)
{
if (objArg == null)
return "";
StringBuild ......