我需要从XML中读取状态字段的帮助
我需要使用Delphi7阅读XML文本中的我需要从XML中读取状态字段的帮助,xml,delphi,delphi-7,Xml,Delphi,Delphi 7,我需要使用Delphi7阅读XML文本中的status字段 此XML位于TMemo中: 665675780 8/4/2018 15:47:44 好啊 0 a6gdfg567c79afd429d872d A6589-dfg46D429-D872D 活跃的 不 到目前为止,我这样做没有结果,我没有得到任何东西: 使用XMLDoc、XMLIntf; 程序TForm1.BitBtn1Click(发送方:TObject); 变量 XmlFile:TXMLDocument; 文件:IXMLDocumen
status
字段
此XML位于TMemo
中:
665675780
8/4/2018 15:47:44
好啊
0
a6gdfg567c79afd429d872d
A6589-dfg46D429-D872D
活跃的
不
到目前为止,我这样做没有结果,我没有得到任何东西:
使用XMLDoc、XMLIntf;
程序TForm1.BitBtn1Click(发送方:TObject);
变量
XmlFile:TXMLDocument;
文件:IXMLDocument;
MainNode,CustomerNode:IXMLNode;
i:整数;
XMLPath:string;
开始
Doc:=LoadXMLData(Memo1.Text);
尝试
//LoadFromFile(XMLPath);
单据激活:=真;
主节点:=Doc.DocumentElement;
对于i:=0到MainNode.ChildNodes['licensecloud'].ChildNodes.Count-1 do
开始
CustomerNode:=MainNode.ChildNodes['licensecloud'].ChildNodes[i];
//在这里你可以得到任何信息
ShowMessage(CustomerNode.ChildNodes['status'].Text);
//ShowMessage(CustomerNode.ChildNodes['address\u line\u 1'].Text);
结束;
最后
FreeAndNil(XmlFile);
结束;
结束;
和
)。有效的xml:
<?xml version="1.0" encoding="UTF-8"?>
<licensecloud>
<request_id>665675780</request_id>
<request_timestamp>8/4/2018 15:47:44</request_timestamp>
<request_status>OK</request_status>
<error_num>0</error_num>
<error_msg></error_msg>
<error_desc></error_desc>
<license>
<key>a6gdfg567c79afd429d872d</key>
<dashed>A6589-dfg46D429-D872D</dashed>
<status>ACTIVE</status>
</license>
<trial>no</trial>
<expires/>
</licensecloud>
procedure TForm1.Button1Click(Sender: TObject);
var
XmlFile : TXMLDocument;
Doc: IXMLDocument;
MainNode, CustomerNode : IXMLNode;
i : Integer;
XMLPath : string;
begin
Doc := LoadXMLData(Memo1.Text);
try
// XmlFile.LoadFromFile(XMLPath);
Doc.Active := True;
MainNode := Doc.DocumentElement;
ShowMessage(MainNode.ChildNodes['license'].ChildNodes['status'].Text);
finally
FreeAndNil(XmlFile);
end;
end;