当前位置:萝卜系统下载站 > 技术开发教程 > 详细页面

Delphi7对XML的支持区分

Delphi7对XML的支持区分

更新时间:2022-07-16 文章作者:未知 信息来源:网络 阅读次数:

Delphi7对XML的支持---TXMLDocument类

   Delphi7 支持对XML文档的操作,可以通过TXMLDocument类来实现对XML文档的读写。可以利用TXMLDocument把XML文档读到内存中,从而可以进行编辑、保存操作。TXMLDocument类是通过DOM(文档对象模型)接口来访问XML文档中的各个元素的。对于DOM接口的实现有多种方式,Delphi支持的方式有:1)微软的MSXML SDK,这种方式是通过COM对象来实现;2) Apache 的Xerces的实现方式;3)另外一种是开源OpenXML实现方式。对于不同的接口实现方式可以通过设定TXMLDocument的DOMVender来进行控制。

   支持XML的Delphi单元主要存在与…\Borland\Delphi7\Source\Xml目录下,主要包括:XMLIntf,XMLDoc,xmldom,msxmldom,xercesxmldom,xdom,oxmldom等单元。

  l XMLIntf――包括了Borland自己定义的XML文档的接口;

  l XMLDoc――是对XMLIntf中所定义接口的Borland实现;

  l Xmldom――定义了DOM(文档对象模型)接口,这里对DOM接口进行了Borland的实现;

  l Msxmldom――实现微软对Xmldom中定义的接口的实现,主要调用微软的COM对象来实现,对Xmldom中定义接口的封装;

  l Xercesxmldom――Borland通过Xerces XML DOM方式来实现对Xmldom中定义接口的封装;

  l Oxmldom――Borland通过使用OpenXML来实现对Xmldom中定义接口的封装;

  TXMLDocument类的属性,请参考Borland的帮助文件;

  读写XML文档
  l 读取XML文档

  通常情况下不通过直接使用TXMLDocument对象来进行XML文件的读取,而是使用XMLDoc单元中提供的几个有用的函数来读取XML文档,这些函数包括:

  function LoadXMLDocument(const FileName: DOMString): IXMLDocument;

  function LoadXMLData(const XMLData: DOMString): IXMLDocument; overload;

  function LoadXMLData(const XMLData: string): IXMLDocument; overload;

  function NewXMLDocument(Version: DOMString = '1.0'): IXMLDocument;

  可以看出这些函数全部返回的是IXMLDocument接口,得到了IXMLDocument接口在进行文档的操作;

  这些函数都是通过创建TXMLDocument对象来实现对XML文档的读取的;其中NewXMLDocument仅仅创建一个IXMLDocument接口。

  可以这样利用NewXMLDocument来读取XML文档:

   XMLDoc := NewXMLDocument;

  XMLDoc.LoadFromFile(FileName);

  l 保存XML文档

  可以通过下面的方式来保存XML文档:


   XMLDoc := NewXMLDocument;

   iRoot := IXMLDoc.CreateNode(‘TestXMLDocument’);

   XMLDoc.DocumentElement := iRoot;

   …

   XMLDoc.SaveToFile(FileName);

  

   可以看出通过接口来操作XML文档是非常方便的;

  选用不同类型的XML解析方式
   上面已经提到有三种方式实现DOM,也就是可以应用Borland提供的3种不同的XML解析器来对XML文档进行解析;

  l 三种解析器

  1、微软的解析器(MSXML SDK)

  微软解析器主要应用在Windows中,在安装MSXML SDK的时候会安装解析器,同时IE浏览器也提供了解析器,这个解析器是一个COM。

  2、Apache的Xerces解析器

  Borland自己实现了一个Xerces解析器,这个可以通过调用xercesxmldom.dll模块来实现;如果使用这个解析器可能需要同应用程序一起进行分发xercesxmldom.dll,XercesLib.dll,CC3260MT.DLL三个DLL文件

  3、OpenXML解析器

  这个解析器的源代码存在于xdom.pas单元中,这个可以通过http://www.philo.de/xml/进行跟新下载,这个是一个德国人写的XML解析器;

  l 使用不同解析器的比较

[1] [2]  下一页

温馨提示:喜欢本站的话,请收藏一下本站!

本类教程下载

系统下载排行

网站地图xml | 网站地图html