Delphi 中的 XMLDocument 类详解(7) - 获取节点名称与节点的属性名称

简介:
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;
procedure  FormCreate(Sender: TObject);
procedure  Button1Click(Sender: TObject);
procedure  Button2Click(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 ' );
{ 必须用万一提供的 xml 测试文件, 才能有相同的返回值 }
end ;


// 获取节点名称
procedure  TForm1.Button1Click(Sender: TObject);
var
node: IXMLNode;
begin
node :
=  XMLDocument1.DocumentElement;
ShowMessage(node.NodeName); 
{ 科室名单 }

node :
=  node.ChildNodes[ 0 ];  { XMLDocument1.DocumentElement.ChildNodes[0] }
ShowMessage(node.NodeName); 
{ 人员 }

node :
=  node.ChildNodes[ 0 ];  { XMLDocument1.DocumentElement.ChildNodes[0].ChildNodes[0] }
ShowMessage(node.NodeName); 
{ 姓名 }
end ;


// 获取属性名称
procedure  TForm1.Button2Click(Sender: TObject);
var
node: IXMLNode;
begin
node :
=  XMLDocument1.DocumentElement;
ShowMessage(node.AttributeNodes[
0 ].NodeName);  { 备注 }

node :
=  node.ChildNodes[ 0 ];  { XMLDocument1.DocumentElement.ChildNodes[0] }
ShowMessage(node.AttributeNodes[
0 ].NodeName);  { 职务 }
end ;

end .



本文转自黄聪博客园博客,原文链接:http://www.cnblogs.com/huangcong/archive/2010/08/27/1809919.html,如需转载请自行联系原作者
相关文章
|
JavaScript API
vue3手写card组件
vue3手写card组件
370 2
|
机器学习/深度学习 算法 Python
【Python机器学习】分类算法任务、分类模型评价指标详解(图文解释)
【Python机器学习】分类算法任务、分类模型评价指标详解(图文解释)
513 0
|
监控 安全 Java
SpringBoot-开启Admin监控服务
本文介绍如何在SpringBoot项目中开启Admin监控服务。
458 0
|
1月前
|
边缘计算 人工智能 搜索推荐
2025年11月,中国数字人平台生态崛起与数字引擎推荐选择
数字人正成为重塑千行百业的“数字引擎”。依托AI、图形学与多模态交互,数字人具备感知、认知与表达能力,广泛应用于金融、医疗、教育、零售等领域。像衍科技凭借全栈技术与产学研优势领跑行业,获资本与政策双重认可。中国数字人产业正从“跟跑”迈向“领跑”,未来将作为连接物理与数字世界的新入口,开启产业变革新篇章。
|
数据采集 数据挖掘 API
主流电商平台数据采集API接口|【Python爬虫+数据分析】采集电商平台数据信息采集
随着电商平台的兴起,越来越多的人开始在网上购物。而对于电商平台来说,商品信息、价格、评论等数据是非常重要的。因此,抓取电商平台的商品信息、价格、评论等数据成为了一项非常有价值的工作。本文将介绍如何使用Python编写爬虫程序,抓取电商平台的商品信息、价格、评论等数据。 当然,如果是电商企业,跨境电商企业,ERP系统搭建,我们经常需要采集的平台多,数据量大,要求数据稳定供应,有并发需求,那就需要通过接入电商API数据采集接口,封装好的数据采集接口更方便稳定高效数据采集。
|
存储 前端开发 JavaScript
React 文件上传组件 File Upload
本文介绍了如何在 React 中实现文件上传组件,包括基本的概念、实现步骤、常见问题及解决方案。通过 `<input type="file">` 元素选择文件,使用 `fetch` 发送请求,处理文件类型和大小限制,以及多文件上传和进度条显示等高级功能,帮助开发者构建高效、可靠的文件上传组件。
914 3
|
运维 监控 Ubuntu
怎样配置Linux分析工具:atop篇
在管理Linux系统时,了解系统级监控工具是至关重要的。其中,atop是一种功能强大的工具,它允许运维人员以实时的方式监控系统运行状态,包括进程活动、内存使用、磁盘I/O以及网络负载等。atop提供了一种简洁而全面的方式来追踪系统表现和资源消耗情况,使得性能分析变得简单而直观。
怎样配置Linux分析工具:atop篇
|
JSON Prometheus 监控
Prometheus+Grafana 部署
Prometheus 和 Grafana 组成监控解决方案。Prometheus 是开源系统监控工具,Grafana 则用于数据可视化。要连接 Prometheus 数据源,登录 Grafana,点击设置,选择“连接”,添加新数据源,选择 Prometheus 类型,并填入 Prometheus 服务器的 HTTP 地址,如 `http://192.168.1.1:9090`,验证连接。之后,从 Grafana 官方仪表板库导入监控面板,如主机监控模板,以可视化系统状态。完成这些步骤后,便建立了有效的监控系统。
606 1
|
SQL 存储 API
Flink(十五)【Flink SQL Connector、savepoint、CateLog、Table API】(5)
Flink(十五)【Flink SQL Connector、savepoint、CateLog、Table API】
|
监控 安全 数据库连接
【Go语言专栏】Go语言中的数据库连接池管理
【4月更文挑战第30天】本文探讨了Go语言中数据库连接池的概念、实现和最佳实践。连接池预先创建并维护数据库连接,减少建立和关闭连接的开销,提高效率和应用稳定性。文中提供了一个简单的连接池实现示例,并列出使用连接池的最佳实践,包括合理设置连接池大小、控制连接生命周期及错误处理等。Go语言的并发机制如协程和通道有助于实现线程安全的连接池。通过实际案例分析,文章旨在帮助开发者更好地理解和应用连接池技术。
478 0