var
doc :IXMLDOMDocument;
aa:IXMLDOMNode;
node1:IXMLDOMNodeList;
begin
doc.load('a.xml');
node1 := doc.documentElement.selectNodes('//Peple[@gendel="male"]');
aa := node1.nextNode.firstChild;
repeat
aa := aa.nextSibling;
if aa.text='abc' then dosomething();
until aa = node1.nextnode.lastchild;
目的是要遍历节点下的所有子节点找到值是'abc'的,但是总会在最后一句的时候出错,不知道为什么..
请教。
或者有什么别的遍历方法???
doc :IXMLDOMDocument;
aa:IXMLDOMNode;
node1:IXMLDOMNodeList;
begin
doc.load('a.xml');
node1 := doc.documentElement.selectNodes('//Peple[@gendel="male"]');
aa := node1.nextNode.firstChild;
repeat
aa := aa.nextSibling;
if aa.text='abc' then dosomething();
until aa = node1.nextnode.lastchild;
目的是要遍历节点下的所有子节点找到值是'abc'的,但是总会在最后一句的时候出错,不知道为什么..
请教。
或者有什么别的遍历方法???
var
IDOM: IXMLDOMDocument;
FList: IXMLDOMNodeList;
FNode: IXMLDOMNode;
begin
IDOM := CoDOMDocument.Create;
if IDOM.loadXML(Memo1.Text) then
begin
FList := IDOM.selectNodes('//Peple[@gendel="male"]');
FNode := FList.nextNode;
while Assigned(FNode) do
begin
...
FNode := FList.nextNode;
end;
end;
end;