为什么80%的码农都做不了架构师?>>>   

unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, StdCtrls;typeTForm1 = class(TForm)XMLDocument1: TXMLDocument;Memo1: TMemo;Button1: TButton;Button2: TButton;Button3: TButton;Button4: TButton;Button5: TButton;procedure FormCreate(Sender: TObject);procedure Button1Click(Sender: TObject);procedure Button2Click(Sender: TObject);procedure Button3Click(Sender: TObject);procedure Button4Click(Sender: TObject);procedure Button5Click(Sender: TObject);end;varForm1: TForm1;implementation{$R *.dfm}//打开
procedure TForm1.FormCreate(Sender: TObject);
beginXMLDocument1.LoadFromFile('c:\temp\test.xml');{必须用万一提供的 xml 测试文件, 才能有相同的返回值}
end;//XMLDocument1 对象的 XML 属性
procedure TForm1.Button1Click(Sender: TObject);
begin{前面我们经常用这句话, 因为这里的 Lines 与 XML 同属于 TStrings}Memo1.Lines := XMLDocument1.XML;{如果不怕麻烦, 这样写也可以:}Memo1.Lines.Text := XMLDocument1.XML.Text;{如果知道了这一点, 那 XML 属性的功能可就多了, 并且这里的 XML 属性是可写的}{不过这里要谈的是节点的 XML 属性}
end;//根节点的 XML 属性
procedure TForm1.Button2Click(Sender: TObject);
varnode: IXMLNode;
begin{先看根节点: XMLDocument1.DocumentElement}node := XMLDocument1.DocumentElement;//Memo1.Lines := node.XML; {这一句会出错}{因为节点的 XML 属性是 WideString 类型的, 应该这样:}Memo1.Lines.Text := node.XML; {将会读出根节点与根节点包含的所有内容}{还有一个更大的区别: 节点的 XML 是只读的!}
end;//子节点的 XML 属性
procedure TForm1.Button3Click(Sender: TObject);
varnode: IXMLNode;
beginnode := XMLDocument1.DocumentElement;node := node.ChildNodes[0];Memo1.Lines.Text := node.XML; {会显示一个子节点的全部}
end;//属性的 XML 属性
procedure TForm1.Button4Click(Sender: TObject);
varnode: IXMLNode;
beginnode := XMLDocument1.DocumentElement;node := node.AttributeNodes[0]; {属性也是 IXMLNode 类型的}ShowMessage(node.NodeName);  {备注}ShowMessage(node.NodeValue); {测试}{用 XML 属性一次把他们都读出来:}ShowMessage(node.XML);       {备注="测试"}
end;//叶节点的 XML 属性
procedure TForm1.Button5Click(Sender: TObject);
varnode: IXMLNode;
beginnode := XMLDocument1.DocumentElement;node := node.ChildNodes[0];node := node.ChildNodes[0];node := node.ChildNodes[0]; {这就是叶节点了}ShowMessage(node.XML);  {张三}{这时的 XML 属性和 Text 属性一样了}ShowMessage(node.Text); {张三}
end;end.

转载于:https://my.oschina.net/hermer/blog/319186

Delphi 中的 XMLDocument 类详解(13) - 关于 XML 属性相关推荐

  1. Delphi 中的 XMLDocument 类详解(5) - 获取元素内容

    为什么80%的码农都做不了架构师?>>>    unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Clas ...

  2. c++ builder 中的 XMLDocument 类详解(2) - 记要

    1.TXMLDocument 适用于内存中操作和建立新的 xml 2.一个 TXMLDocument 文档其实就是一个节点集合 3.每个节点包括名称.文本内容.属性集合.子节点集合 4.可以按位置或名 ...

  3. Java中的Runtime类详解

    Java中的Runtime类详解 1.类注释 /**Every Java application has a single instance of class Runtime that allows ...

  4. java configuration类_JAVA中的Configuration类详解

    本文主要研究的是java中的configuration类的用法,涉及maven自动加载,pom.xml配置和简单的java代码,具体如下. properties文件是java平台默认的配置文件格式,其 ...

  5. stringtokenizer java_基于Java中的StringTokenizer类详解(推荐)

    StringTokenizer是字符串分隔解析类型,属于:Java.util包. 1.StringTokenizer的构造函数 StringTokenizer(String str):构造一个用来解析 ...

  6. mbg中的Example类详解

    Mybatis逆向工程中生成的Example类 MyBatis Generator:简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及be ...

  7. XmlDocument类详解

     XmlDocument类 FreeEIM XmlDocument类是.NET框架的DOC解析器.XmlDocument将XML视为树状结构,它装载XML文档,并在内存中构建该文档的树状结构.下面 ...

  8. mybatis中关于example类详解mybatis的Example[Criteria]的使用

    一.什么是example类 mybatis-generator会为每个字段产生如上的Criterion,如果表的字段比较多,产生的Example类会十分庞大.理论上通过example类可以构造你想到的 ...

  9. js中的Class类详解

    目录 什么是类? 定义一个简单的类 定义一个类为Person,每个Person都会跑,都有名字 看一下Person类 和 Person的实例 但是为什么Person实例多出来的两个属性? new 一个 ...

最新文章

  1. Working with Symbols (在Balsamiq Mockups中复用自定义控件和页面模板)
  2. php高版本安装ecshop错误解决方法
  3. SAP CRM Pricing Procedure中的Doc和Customer Procedure在哪里维护
  4. oracle 数据的定义,oracle——数据定义
  5. linux声卡测试命令,linux添加声卡驱动使用命令行音频播放器的方法
  6. 操作属性之修改样式属性
  7. thinkphp5 return 返回空_杨丞琳演唱会意外踩空,从两层楼高的舞台掉落,李荣浩心疼发文...
  8. FZU 2195 检查站点
  9. Hibernate之HQL查询
  10. LOJ 6409. 「ICPC World Finals 2018」熊猫保护区
  11. FMS4.5限制连接数
  12. ansible:jinja2对特殊符号的处理
  13. 多省市出台关于区块链人才引进的计划
  14. MacBook关闭系统更新
  15. FICO-固定资产报废处置流程ABAVN
  16. 2-- 关机/重启 、 创建 / 切换目录
  17. B0505S-1WR3 隔离模块DC/DC
  18. 解决:cannot import name ‘xxx‘ from ‘xxx‘
  19. error lnk1123:转换到coff期间失败
  20. 计算机艺术和动画之父肯·诺尔顿去世,享年91岁

热门文章

  1. JAVA基础-关键字与保留字
  2. java 6 损坏,Java 异常处理六
  3. 数据中台是什么意思?如何建设数据中台?
  4. 2021年JavaScript的发展前景如何呢?
  5. java 九大内置对象_JSP九大内置对象(隐式对象)
  6. 分数四则运算法则c语言,△【OJ】(二)---C---分数类的四则运算
  7. python项目结构图_python项目
  8. 计算机应用word作业,《计算机应用基础》作业
  9. php get获取腾讯视频vid,获取腾讯视频源地址链接的方法
  10. linux shell 批量清空,shell脚本批量删除docker镜像