XME内容为:
<?xml version="1.0" encoding="GB2312" ?>
- <fill version="1.0">
- <items>
<item name="state" value="0" />
<item name="errcode" value="3000" />
<item name="errmsg" value="请正确填写卡号密码" />
<item name="mark" value="51" />
</items>
</fill>
用TXMLDocument来解析.不过因为的Item因为是一个集合,所以只能循环一个一个读,有点麻烦,下面是我帮你写的一个解析程序,可以把每个Item的name和Value都ShowMessage显示出来.在D2007下持行通过.
var i:integer;
RootNode:IXMLNode;
begin
self.XMLDoc.Active:=False;
self.XMLDoc.XML.Text:='你的XML';
self.XMLDoc.Active:=true;
RootNode:=self.XMLDoc.DocumentElement;
for i := 0 to RootNode.ChildNodes[0].ChildNodes.Count - 1 do
begin
showmessageFmt('name=%s,value=%s',[
VarToStr(RootNode.ChildNodes[0].ChildNodes[i].Attributes['name']),
VarToStr(RootNode.ChildNodes[0].ChildNodes[i].Attributes['value'])]);
end;
end;
var
Node: IXMLNode;
XMLDocument1: TXMLDocument;
begin
XMLDocument1.LoadFromFile('XML文件保存路径');
Node := XMLDocument1.DocumentElement;
for I := 0 to GNode.ChildNodes.Count - 1 do
循环取结点操作赋值
end;
大概就是这个意思