VB中:
dim doc
set doc = CreateObject("Microsoft.MSXML2")
dim str as string
str = "<root><a>aa</a><a>bb</a></root>"
doc.loadXML str
dim list as IXMLDOMNodeList
set list = doc.getElementByName("a")
dim length as integer
length = list.length //可以得到length的值为2VC中:
pDoc指针已经正常获得
IXMLDOMNodeList *list;
list = pDoc->getElementByName("a") //list指针的值已经有了,一般都是同一个值0x008a4500
int len = list.length; //得到的值始终为0,哪位大侠知道怎么回事
dim doc
set doc = CreateObject("Microsoft.MSXML2")
dim str as string
str = "<root><a>aa</a><a>bb</a></root>"
doc.loadXML str
dim list as IXMLDOMNodeList
set list = doc.getElementByName("a")
dim length as integer
length = list.length //可以得到length的值为2VC中:
pDoc指针已经正常获得
IXMLDOMNodeList *list;
list = pDoc->getElementByName("a") //list指针的值已经有了,一般都是同一个值0x008a4500
int len = list.length; //得到的值始终为0,哪位大侠知道怎么回事
解决方案 »
- _CrtDumpMemoryLeaks()之类的函数只能调试C风格的malloc/free不能用于new/delete么?
- VC 6.0中, 程序出现"0x5f55a57b"指令引用的"0x00000000"内存。该内存不能为"read". 希望大侠们帮我看下。
- CListCtrl怎么将图标居中显示?
- 关于产品在系统关机时执行更新
- 同一工作空间如何调用另一工程?
- 请教一个关于打印的函数
- 高分求助:如何把多个工程合并到一个工程中(分嫌少加分)
- 关于获取网络文件属性的问题!
- 有人了解SKINSE界面库吗?貌似是免费的
- 如何增加编解码器?
- 高分请教高手,dll替换问题,急!
- 求助::怎样把动态连接的mfc工程变成非动态联接的呀?
<COLLECTION
xmlns:dt="urn:schemas-microsoft-com:datatypes">
<DATE dt:dt="datetime">1998-10-13T15:56:00</DATE>
<BOOK>
<TITLE>Lover Birds</TITLE>
<AUTHOR>Cynthia Randall</AUTHOR>
<PUBLISHER>Lucerne Publishing</PUBLISHER>
</BOOK>
<BOOK>
<TITLE>The Sundered Grail</TITLE>
<AUTHOR>Eva Corets</AUTHOR>
<PUBLISHER>Lucerne Publishing</PUBLISHER>
</BOOK>
<BOOK>
<TITLE>Splish Splash</TITLE>
<AUTHOR>Paula Thurman</AUTHOR>
<PUBLISHER>Scootney</PUBLISHER>
</BOOK>
</COLLECTION>#import "msxml3.dll"
using namespace MSXML2;inline void TESTHR( HRESULT _hr )
{ if FAILED(_hr) throw(_hr); }void XMLDOMNodeListSample()
{
try {
IXMLDOMDocumentPtr docPtr;
IXMLDOMNodeListPtr NodeListPtr;
IXMLDOMNodePtr DOMNodePtr; //init
TESTHR(CoInitialize(NULL));
TESTHR(docPtr.CreateInstance("Msxml2.DOMDocument.5.0")); // load a document
_variant_t varXml("C:\\book.xml");
_variant_t varOut((bool)TRUE);
varOut = docPtr->load(varXml);
if ((bool)varOut == FALSE)
throw(0);
NodeListPtr = docPtr->getElementsByTagName("AUTHOR");
MessageBox(NULL, _bstr_t(NodeListPtr->length), _T("Node List length"), MB_OK);
} catch(...)
{
MessageBox(NULL, _T("Exception occurred"), _T("Error"), MB_OK);
}
CoUninitialize();
}
你也可以用同步模式,这样Load调用之后就可以读DOM了