unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, StdCtrls; type TForm1 = class(TForm) XMLDocument1: TXMLDocument; Button1: TButton; Button2: TButton; Button3: TButton; procedure FormCreate(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} //打开 procedure TForm1.FormCreate(Sender: TObject); begin XMLDocument1.LoadFromFile('c:\temp\test.xml'); end; //获取根目录下的元素数(1) procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(IntToStr(XMLDocument1.DocumentElement.ChildNodes.Count)); {4} {DocumentElement 是根节点} {ChildNodes 是节点包含的子节点的列表} end; //获取根目录下的元素数(2) procedure TForm1.Button2Click(Sender: TObject); var nodeList: IXMLNodeList; {定义一个节点列表对象} begin nodeList := XMLDocument1.DocumentElement.ChildNodes; {把根节点下的子节点列表赋给节点列表对象} ShowMessage(IntToStr(nodeList.Count)); {4} end; //获取根目录下的元素数(3) procedure TForm1.Button3Click(Sender: TObject); var node: IXMLNode; {定义一个节点对象} nodeList: IXMLNodeList; {定义一个节点列表对象} begin node := XMLDocument1.DocumentElement; {根节点也是一个节点, 把它赋给节点对象} nodeList := node.ChildNodes; ShowMessage(IntToStr(nodeList.Count)); {4} end; end.
分类:
Delphi 与 XML
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· 程序员常用高效实用工具推荐,办公效率提升利器!
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)