RAD Studio 10.2.3 测试√


2021年9月9日:【新增】读取节点中的属性内容


示例:

<?xml version="1.0" encoding="UTF-8"?>
<Persons><test>测试内容</test><!-- test2  是新增内容 时间:2021年9月9日 --><test2 Content="测试内容2"></test2><Person><Name>小印01</Name><Age>22</Age><Sex>男</Sex></Person><Person><Name>小印02</Name><Age>23</Age><Sex>男</Sex></Person>
</Persons>

结果:修改时间 2021年9月9日


代码:

// uses Xml.XMLDoc, Xml.XMLIntfprocedure ReadXMlNode(AStrList: TStringList; ANode: IXMLNode);
vari: Integer;mNodeList: IXMLNodeList;mNodeName: string;mTmpStr: string;
beginmTmpStr := '';if not ANode.HasChildNodes then         // 如果 mNode 没有子节点Exit;mNodeList := ANode.ChildNodes;for i := 0 to mNodeList.Count - 1 dobeginmNodeName := mNodeList[i].NodeName;// begin ******* 新增内容 2021年9月9日 ******************************if mNodeName = 'test2' thenbegin// 获取节点中的属性内容mTmpStr := mNodeName + ': ' + mNodeList[i].Attributes['Content'];AStrList.Add(mTmpStr);end;// end ******* 新增内容 2021年9月9日 ********************************if mNodeList[i].IsTextElement then    // 如果是文本元素beginmTmpStr := mNodeName + ': ' + mNodeList[i].NodeValue;AStrList.Add(mTmpStr);endelseif mNodeList[i].HasChildNodes then    // 如果还有子节点beginReadXMlNode(AStrList, mNodeList[i]);end;end;
end;procedure TForm_Tips.Button_ReadXMLFileClick(Sender: TObject);
varmFileName: string;mDocument: IXMLDocument;mMainNode: IXMLNode;mStrList: TStringList;
beginmFileName := ExtractFileDir(ParamStr(0)) + '\test.xml';if not FileExists(mFileName) thenExit;mDocument := TXMLDocument.Create(nil);mDocument.LoadFromFile(mFileName);mMainNode := mDocument.DocumentElement;mStrList := TStringList.Create;ReadXMlNode(mStrList, mMainNode);Memo_Log.Lines.Text := mStrList.Text;mStrList.Free;
end;

一点点笔记,以便以后翻阅。

Delphi 读XML文件相关推荐

  1. 02_Android写xml文件和读xml文件

     新建Android项目 编写AndroidManifest.xml,使本Android项目具有单元测试功能和写外设的权限. <?xml version="1.0" en ...

  2. Qt: QXMLStreamReader,读XML文件实例

    主要接口: 1.TokenType QXmlStreamReader::readNext() 功能:读取下一个标记,并返回其类型. 主要的类型有: enum QXmlStreamReader::Tok ...

  3. TinyXML-2 读 XML 文件

    要读的XML文件 示例代码 #include <iostream> #include "tinyxml2.h"using namespace std; using na ...

  4. 使用tinyxml读xml文件信息到结构体

    下载TinyXML的网址:http://www.grinninglizard.com/tinyxml/ 使用TinyXML只需要将其中的6个文件拷贝到项目中就可以直接使用了,这六个文件是:tinyxm ...

  5. python读xml文件生成头文件_Python根据指定文件生成XML的方法

    因项目需要根据指定格式的文件生成XML标注文件,可以方便使用LabelImg打开进行编辑和查看.其原始文件默认使用逗号进行分隔,如下所示: 第1个值:原始图片中切图小文件,以AIpng_x,其中x代表 ...

  6. java读xml文件一般用什么_java读xml文件

    /** * 读取sms.xml配置文件信息 * @param file * @throws IOException * @throws JDOMException */ public ReadSMSF ...

  7. python读xml文件生成.h头文件_PYTHON读写xml文件的方法

    要生成的xml文件格式如下: [python] sample xml thing ma xiaoju Springs Widgets, Inc. First I think widgets are g ...

  8. python读xml文件生成.h头文件_Python创建xml文件示例

    Python创建xml文件示例 这里有新鲜出炉的 Python 入门,程序狗速度看过来! Python 编程语言 Python 是一种面向对象.解释型计算机程序设计语言,由 Guido van Ros ...

  9. boost库用property_tree读xml文件

    深刻理解boost property_tree的用法,通过一级循环判断,来遍历xml文件里的一级二级目录: 源代码: #include<boost/property_tree/ptree.hpp ...

最新文章

  1. 【BZOJ-3712】Fiolki LCA + 倍增 (idea题)
  2. easyui placeholder 解决方案
  3. 保护模式下GDTR,LDTR,全局描述符表,局部描述符表和选择器的关系
  4. mysql 目录武沛齐_MySQL数据表中的数据操作
  5. 挂载WebDav提供的网络存储----Client端
  6. 【学习笔记】数据链路层——轮询访问介质控制(轮询协议、令牌传递协议)
  7. C++socket编程(一):绪论
  8. windows 安装mysql的时候最后执行一直停留在Write configuration file
  9. Linux地图投影Proj4应用,Proj.4简介与使用
  10. 用 python 实现各种排序算法(转)
  11. 世界上最早的手动计算机,世界上第一台电子计算机诞生于多少年,名字叫做什么...
  12. 在自己订阅的GOOGLE快讯中,看到自己的文章
  13. Exchange会议室邮箱4种常见会议预定场景的介绍和设置
  14. 优达学诚--对安然事件数据集的分析
  15. java包是什么意思_java中的“包”到底是什么意思?
  16. 【LaTeX PPT模板集】Beamer主题与配色使用教程
  17. Uiautomator2 GitHub文档转载
  18. 二分法中 mid=beg+(end-beg)/2 与 mid=(beg+end)/2 的区别?
  19. bose蓝牙音箱使用说明_性价比甄选 推荐这5款超值得入手的蓝牙音箱
  20. 【HTTP劫持和DNS劫持】

热门文章

  1. 智能电视“病态”逻辑:被玩坏的商业模式与被摧残的用户体验
  2. ps制作无接缝背景图成为背景图案
  3. 寄语八十年代的新一代
  4. CVPR2023 | 大脑视觉信号被Stable Diffusion复现图像!“人类的谋略和谎言不存在了”...
  5. 书论30 张怀瓘《书断》
  6. cad指定服务器名称,auto CAD 服务器地址修改
  7. navicat数据库
  8. K折交叉验证的深入理解
  9. 出现一个黑色框按不动_诺菲特 | 哈勃系列窄框推拉门评测
  10. Git - 拉取远程分支并创建本地分支