delphi读取XML示例

本文介绍了一种使用Delphi从特定格式的XML文件中解析移动设备定位信息的方法。通过读取XML节点,提取了包括手机号码、经度和纬度等关键定位数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

procedure TfrmMain.btn1Click(Sender: TObject);
var
  TextXML:IXMLDocument;
  XmlRoot:IXMLNode;
  NodePos:IXMLNode;
  b:string;
  x,y:double;
  LocateInfo:TLocateInfo;
begin
  TextXML:=TXMLDocument.Create(nil);
  TextXML.LoadFromFile('c: esponse.xml');
  XmlRoot:= TextXML.DocumentElement;
  NodePos:=XmlRoot.ChildNodes['slia'].ChildNodes['pos'];
  LocateInfo.Mobile:=NodePos.ChildNodes['msid'].NodeValue;
  LocateInfo.X := NodePos.ChildNodes['pd'].ChildNodes['shape'].ChildNodes['Point'].ChildNodes['coord'].ChildNodes['X'].NodeValue;
  LocateInfo.Y := NodePos.ChildNodes['pd'].ChildNodes['shape'].ChildNodes['Point'].ChildNodes['coord'].ChildNodes['Y'].NodeValue;
  showmessage(b);
end;

  

 

//以下为示例XML文件:

<?xml version="1.0" encoding="gb2312"?> 
<svc_result ver="1.0.0">     
<hdr ver="1.0.0">         
	<sessionid>10587695901453864860</sessionid>     
</hdr>     
<slia ver="1.0.0">         
	<pos>             
		<msid type="MSISDN" enc="ASC">13999991113</msid><!--返回结果的手机号码-->             
		<pd>          
			<time utc_off="+0800">20030721143954</time>                 
			<shape>      
				<Point gid="some_thing" srsName="www.epsg.org#4326">                         
					<coord><!--返回的经纬度--> 
						<X>116.21392</X>                             
						<Y>40.22050</Y>                         
					</coord>                     
				</Point>   
			</shape>            
		</pd>         
	</pos>         
	<msid_status>M_NORMAL</msid_status>         
	<roam_city>010</roam_city>     
</slia> 
</svc_result>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值