关于读写xml的,请大神们解答,该如何解决
关于读写xml的,请大神们解答
我用vc6.0创建了一个对话框,然后又创建了一个按钮,然后双击按钮在OnButton1()里面写了
然后又加了文件
#import "msxml3.dll"
using namespace MSXML2;
然后就一直在抱错,请各位解答下为啥这样呢?
error C2039: 'load' : is not a member of 'IXMLDocument'
error C2039: 'GetdocumentElement' : is not a member of 'IXMLDocument'
------解决方案--------------------
error C2039: 'load' : is not a member of 'IXMLDocument'
error C2039: 'GetdocumentElement' : is not a member of 'IXMLDocument'
IXMLDocument类没有load这个成员函数
IXMLDocument 没有GetdocumentElement这个成员函数。
好久没用MSXML了,查一下成员函数表吧
------解决方案--------------------
HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument30));
// 改为 HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument40));
------解决方案--------------------
http://www.cnblogs.com/babyblue/archive/2005/05/09/151462.html
------解决方案--------------------
读写xml的类多了去了,TinyXML,CMarkUp,不知道为什么非要用这种方法
------解决方案--------------------
把MSXML2::IXMLDocumentPtr XMLDOC;修改为MSXML2::IXMLDOMDocumentPtr XMLDOC;试一试吧!!希望能解决你的问题。
我用vc6.0创建了一个对话框,然后又创建了一个按钮,然后双击按钮在OnButton1()里面写了
- C/C++ code
//这是看网上的 ::CoInitialize(NULL); MSXML2::IXMLDocumentPtr XMLDOC; MSXML2::IXMLDOMElementPtr XMLROOT; MSXML2::IXMLDOMElementPtr XMLELEMENT; MSXML2::IXMLDOMNodeListPtr XMLNODES; MSXML2::IXMLDOMNamedNodeMapPtr XMLNODEATTS;//某个节点的所有属性; MSXML2::IXMLDOMNodePtr XMLNODE; HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument30)); if(!SUCCEEDED(HR)) { //MessageBox("faild!!"); return ; } XMLDOC->load("E:\\S-水浒无双\\Client\\UserData\\Login.config"); XMLROOT = XMLDOC->GetdocumentElement();//获得根节点; XMLROOT->get_childNodes(&XMLNODES);//获得根节点的所有子节点; long XMLNODESNUM,ATTSNUM; XMLNODES->get_length(&XMLNODESNUM);//获得所有子节点的个数; CString TMP; TMP.Format("%d",XMLNODESNUM); //MessageBox(TMP); for(int I=0;I<XMLNODESNUM;I++) { XMLNODES->get_item(I,&XMLNODE);//获得某个子节点; XMLNODE->get_attributes(&XMLNODEATTS);//获得某个节点的所有属性; XMLNODEATTS->get_length(&ATTSNUM);//获得所有属性的个数; for(int J=0;J<ATTSNUM;J++) { XMLNODEATTS->get_item(J,&XMLNODE);//获得某个属性; CString T1 = (char*)(_bstr_t)XMLNODE->nodeName; CString T2 = (char*)(_bstr_t)XMLNODE->text; //MessageBox(T1+" = "+T2); } //MessageBox((_bstr_t)XMLNODE->nodeName+": "+(_bstr_t)XMLNODE->text); } //XMLDOC->save("XMLTEST.XML"); XMLNODES.Release(); XMLNODE.Release(); XMLROOT.Release(); XMLDOC.Release(); ::CoUninitialize();
然后又加了文件
#import "msxml3.dll"
using namespace MSXML2;
然后就一直在抱错,请各位解答下为啥这样呢?
error C2039: 'load' : is not a member of 'IXMLDocument'
error C2039: 'GetdocumentElement' : is not a member of 'IXMLDocument'
------解决方案--------------------
error C2039: 'load' : is not a member of 'IXMLDocument'
error C2039: 'GetdocumentElement' : is not a member of 'IXMLDocument'
IXMLDocument类没有load这个成员函数
IXMLDocument 没有GetdocumentElement这个成员函数。
好久没用MSXML了,查一下成员函数表吧
------解决方案--------------------
HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument30));
// 改为 HRESULT HR = XMLDOC.CreateInstance(_uuidof(MSXML2::DOMDocument40));
------解决方案--------------------
http://www.cnblogs.com/babyblue/archive/2005/05/09/151462.html
------解决方案--------------------
读写xml的类多了去了,TinyXML,CMarkUp,不知道为什么非要用这种方法
------解决方案--------------------
把MSXML2::IXMLDocumentPtr XMLDOC;修改为MSXML2::IXMLDOMDocumentPtr XMLDOC;试一试吧!!希望能解决你的问题。