Delphi 中的 XMLDocument 类详解(5) - 获取元素内容
为什么80%的码农都做不了架构师?>>>
unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, StdCtrls;typeTForm1 = class(TForm)XMLDocument1: TXMLDocument;Button1: TButton;Button2: TButton;Button3: TButton;Button4: TButton;procedure FormCreate(Sender: TObject);procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);procedure Button3Click(Sender: TObject);procedure Button4Click(Sender: TObject);private{ Private declarations }public{ Public declarations }end;varForm1: TForm1;implementation{$R *.dfm}//打开
procedure TForm1.FormCreate(Sender: TObject);
beginXMLDocument1.LoadFromFile('c:\temp\test.xml');{必须用万一提供的 xml 测试文件, 才能有相同的返回值}
end;//访问第一个人的信息
procedure TForm1.Button1Click(Sender: TObject);
beginShowMessage(XMLDocument1.DocumentElement.ChildNodes[0].ChildNodes['姓名'].Text); {张三}ShowMessage(XMLDocument1.DocumentElement.ChildNodes[0].ChildNodes['性别'].Text); {男}ShowMessage(XMLDocument1.DocumentElement.ChildNodes[0].ChildNodes['年龄'].Text); {34}{可以通过位置访问子节点, 如: ChildNodes[0] 表示子节点列表中的第一个元素}{可以通过子节点名访问子节点, 如: ChildNodes['姓名']}{但在节点名一样的情况下, 只能通过位置访问}{任何情况下都可以通过位置访问, 譬如:}ShowMessage(XMLDocument1.DocumentElement.ChildNodes[0].ChildNodes[0].Text); {张三}
end;//访问第二个人的信息
procedure TForm1.Button2Click(Sender: TObject);
varnodeList: IXMLNodeList;node: IXMLNode;
beginnodeList := XMLDocument1.DocumentElement.ChildNodes;node := nodeList[1];ShowMessage(node.ChildNodes['姓名'].Text); {李四}ShowMessage(node.ChildNodes['性别'].Text); {女}ShowMessage(node.ChildNodes['年龄'].Text); {43}
end;//获取所有成员姓名
procedure TForm1.Button3Click(Sender: TObject);
varnodeList: IXMLNodeList;node: IXMLNode;num,i: Integer;
beginnodeList := XMLDocument1.DocumentElement.ChildNodes;num := nodeList.Count;for i := 0 to num - 1 dobeginnode := nodeList[i];ShowMessage(node.ChildNodes['姓名'].Text); {会分别显示: 张三 李四 王五 孙六}end;
end;//获取所有成员年龄
procedure TForm1.Button4Click(Sender: TObject);
varnodeList: IXMLNodeList;node: IXMLNode;num,i: Integer;
beginnodeList := XMLDocument1.DocumentElement.ChildNodes;num := nodeList.Count;for i := 0 to num - 1 dobeginnode := nodeList[i];ShowMessage(node.ChildValues['年龄']); {会分别显示: 34 43 25 52}end;
end;end.
转载于:https://my.oschina.net/hermer/blog/320598
Delphi 中的 XMLDocument 类详解(5) - 获取元素内容相关推荐
- Delphi 中的 XMLDocument 类详解(13) - 关于 XML 属性
为什么80%的码农都做不了架构师?>>> unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Clas ...
- c++ builder 中的 XMLDocument 类详解(2) - 记要
1.TXMLDocument 适用于内存中操作和建立新的 xml 2.一个 TXMLDocument 文档其实就是一个节点集合 3.每个节点包括名称.文本内容.属性集合.子节点集合 4.可以按位置或名 ...
- Java中的Runtime类详解
Java中的Runtime类详解 1.类注释 /**Every Java application has a single instance of class Runtime that allows ...
- java configuration类_JAVA中的Configuration类详解
本文主要研究的是java中的configuration类的用法,涉及maven自动加载,pom.xml配置和简单的java代码,具体如下. properties文件是java平台默认的配置文件格式,其 ...
- stringtokenizer java_基于Java中的StringTokenizer类详解(推荐)
StringTokenizer是字符串分隔解析类型,属于:Java.util包. 1.StringTokenizer的构造函数 StringTokenizer(String str):构造一个用来解析 ...
- mbg中的Example类详解
Mybatis逆向工程中生成的Example类 MyBatis Generator:简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及be ...
- XmlDocument类详解
XmlDocument类 FreeEIM XmlDocument类是.NET框架的DOC解析器.XmlDocument将XML视为树状结构,它装载XML文档,并在内存中构建该文档的树状结构.下面 ...
- Java中的Properties类详解Properties配置文件
1.Properties类是什么? Properties(Java.util.Properties),该类主要用于读取Java的配置文件,不同的编程语言有自己所支持的配置文件,配置文件中很多变量是经常 ...
- js中的Class类详解
目录 什么是类? 定义一个简单的类 定义一个类为Person,每个Person都会跑,都有名字 看一下Person类 和 Person的实例 但是为什么Person实例多出来的两个属性? new 一个 ...
最新文章
- CCF-201612-3 -权限查询
- 网络营销重点之如何了解用户需求完善网络营销策略
- NOIP 2017 总结
- 计算机视觉应关注的资源
- python清除列表内容_Python 列表的清空方式
- python+OpenCV图像处理(十一)图像轮廓检测
- realsense d435i 跑 vins-fusion
- 2021款iPad Pro渲染图曝光:依旧采用双摄+激光雷达扫描仪
- 计算机考研408的优势和劣势,21考研:杭州电子科技大学计算机改考408!透露2个信号,咋整?...
- NBUT 1116 Flandre's Passageway (LIS变形)
- css 3 制作水波状进度条
- 【PCB学习笔记】绘制智能车四层板 --- PCB封装库的创建方法及现有封装调用
- 抢小米软件html版(简单有效)
- 最速下降法解析(理解笔记)
- ROS World 2020所有视频发布
- syslog (cactiez)
- 两条平滑曲线相乘_对三次贝塞尔曲线过点平滑中尖角和交叉现象的优化
- matlab基于技术的磨皮,美颜磨皮SDK中关于磨皮算法的大致实现流程
- shader篇-渲染纹理
- win32 WaitCommEvent
热门文章
- 古典人像秒变3D,视角还能随意切,华为上交联手出品
- 量子信息之父辞世,开山论文写完14年才被发表,晚年去当建筑工人
- 三星下一代手机芯片由AI来设计,EDA行业老大提供技术
- 苹果被正式起诉!欧盟:滥用主导地位,利用App Store扭曲竞争
- 谷歌实现2种新的强化学习算法,“比肩”DQN,泛化性能更佳!|ICLR 2021
- 16万辆汽车已经用上中国“车规AI第一芯”,量产还在加速
- 只要你的AI算法能比小白鼠聪明,DeepMind的这20万奖金请拿走
- 在PyTorch上用Keras,分布式训练开箱即用,告别没完没了的Debug
- JSONPlaceholder使用
- Python 如何计算当前时间减少或增加一个月