TXMLDocument 的使用

TXMLDocument是DELPHI自带的操作XML的类。

需要它,需要引用单元: uses XMLDoc;

var
XMLDoc:TXMLDocument;
XMLNode: IXMLNode;
child: IXMLNode;
begin
CoInitialize(nil); //初始化ActiveX
XMLDoc:=TXMLDocument.Create(self);
XMLDoc.Active := true;
XMLNode := XMLDoc.AddChild('ConsumeRec');
child := XMLNode.AddChild('EventsDateTime');
child.Text := dateTostr(Now);
XMLDoc.SaveToFile('c:\ok.xml');
XMLDoc.Free; //不能用,因为接口自动释放内存。
CoUninitialize;
end;

  动态创建TXMLDocument对XML文件进行读取和写入

var
XML : TXMLDocument;
Node1 : IXMLNode;
DocIntf : IXMLDocument;
begin
XML := TXMLDocument.Create(self);
DocIntf := XML; //防止接口被自动释放,少了这一句会发生AV
try
XML.LoadFromStream(Strem);
XML.Active := True;
{ 读ReportObject属性 }
Node1 := XML.DocumentElement.ChildNodes.FindNode('ReportObjectProperty');
ReportName := Node1.ChildNodes.FindNode('ReportName').GetAttributeNS('Value', '');
ReportType := Node1.ChildNodes.FindNode('ReportType').GetAttributeNS('Value', '');
DataViewName := Node1.ChildNodes.FindNode('DataViewName').GetAttributeNS('Value', '');
SQLStr := Node1.ChildNodes.FindNode('SQLStr').GetAttributeNS('Value', '');
finally
XML := nil;
DocIntf := nil;
end;
end;

  

TXMLDocument 的使用的更多相关文章

  1. Delphi中使用TXMLDocument控件应注意的问题 转

    Delphi中使用TXMLDocument控件应注意的问题 delphiconstructorxmlclass今天写了一个类,其中用到了TXMLDocument控件.这个控件我是要动态生成的. 但是却 ...

  2. Delphi中TxmlDocument控件的用法 转

    Delphi中对XML文件的解析做的很好,比直接使用MS的MSXML2_TLB中的接口要方便很多,现称述于下面. 在讲之前先给出一个XML实例,在讲某些部分是要结合实例比较容易理解. 1<?xm ...

  3. TXMLDocument换行的两种方案

    手写代码:   XML格式化使用msxml引擎,Delphi代码如下: Delphi/Pascal code   ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ...

  4. Delphi中使用TXMLDocument控件应注意的问题

    今天写了一个类,其中用到了TXMLDocument控件.这个控件我是要动态生成的. 但是却遇到了非常奇怪的问题,下面分享一下 procedure TMainForm.Button1Click(Send ...

  5. TXMLDocument 创建空值节点不要缩写

    TXMLDocument 创建空值节点不要缩写 xmldoc.CreateNode('input'); 然后访问 xmldoc.DocumentElement.XML <input/> 节 ...

  6. XPath and TXmlDocument

    XML example, from the OmniXML XPath demo: <?xml version="1.0" encoding="UTF-8" ...

  7. TXMLDocument use case (Delphi)

    Description This example illustrates the basic operations on an XML document. Code procedure CreateD ...

  8. Using TXMLDocument, Working with XML Nodes

    Using TXMLDocument The starting point for working with an XML document is the Xml.XMLDoc.TXMLDocumen ...

  9. Lazarus Reading XML- with TXMLDocument and TDOMNode

    这里读取'HistoryPath' ,'TracePath' 元素下的‘value’属性使用的是 var xmlCfg: TXMLDocument; .... function ReadXMLCFG: ...

  10. Delphi中动态调用TXMLDocument的经历

    var  vXMLDocument: TXMLDocument;begin  vXMLDocument := TXMLDocument.Create('c:/temp/temp.xml');  Cap ...

随机推荐

  1. Thymeleaf 模板

    Thymeleaf 模板布局 th:fragment.th:replace.th:insert.th:remove th:fragment  模板布局 模板片段说明 模板中,经常希望从其他模板中包含⼀ ...

  2. Android笔记(二十二) Android中的GridView

    GridView和ListView一样,是Android中比较常见的布局控件,譬如我们的手机桌面其实就是一个GridView. 效果: 实现过程和ListView类似,也是通过Adapter将数据源展 ...

  3. Dism++备份还原系统

    使用dism++备份和还原需要下载该工具,并选择与系统对应的Dism++x64或Dism++x32运行进行操作. Dism++网络下载地址:http://www.chuyu.me/zh-Hans/in ...

  4. MySQL处理达到百万级数据时,如何优化?

    1.两种查询引擎查询速度(myIsam 引擎 ) InnoDB 中不保存表的具体行数,也就是说,执行select count(*) from table时,InnoDB要扫描一遍整个表来计算有多少行. ...

  5. Centos7安装教程

    1.下载centos7的镜像 到华为云镜像官方网站下载https://mirrors.huaweicloud.com/ 2.创建虚拟机并载入镜像 3.开启虚拟机,正式安装 选择第一项:Install ...

  6. Linux学习之五-Linux系统终端常用的快捷键

    Linux系统终端常用的快捷键 (使用快捷键能大大提高效率,部分用在远程登录的工具如Xshell下) 剪切板操作(终端不支持,因为终端是纯命令行) Ctrl+insert     复制 Shift+i ...

  7. Chkdsk /f 修复无法识别EXFAT卷文件系统

    Chkdsk 工具将错误地报告为损坏的 Windows 7 和 Windows Server 2008 R2 中 exFAT 卷文件系统 适用于: Windows Server 2008 R2 Ser ...

  8. C++——宏观把控

    跟看所有的书一样,我们都要求第一遍泛读,宏观把控书本内容,C++依旧如此进行.看到前面这几章的时候感觉非常熟悉,因为能让我联想到很多以前学习的VB.C#等的知识,感觉轻松很多,原来我已经学过了很多东西 ...

  9. celery 笔记

    参考:https://blog.csdn.net/tichimi3375/article/details/82415412 中文翻译:https://www.celerycn.io/      htt ...

  10. vue 过滤