Delphi操作XML

Delphi操作XML

Delphi操作XMl,只要使用 NativeXml。我是用的版本是4.02。NativeXML的使用方法比较简单,但是功能很强大。

XE2的话,要在simdesign.inc后面加上:

         // Delphi XE2 / 16
        {$ifdef VER230}
        {$define D7UP}
        {$define D10UP}
        {$define D15UP}
        {$endif}

一、使用

  1) Copy the NativeXml files from the NativeXml directory into your project folder. Copy additional
      files in the General directory to your project folder or some appropriate general folder you want.

  2) Include the clause "uses NativeXml" in your unit.

      If you want to use NativeXml in all your projects, you can also add the NativeXml folder to your library path.

最简单的方法是将General 下的 文件和 nativexml 下的 文件复制到一个目录下,然后加入到 library路径,这样以后用到就不用拷来拷去了。

在(实现)部分 uses NativeXml; //必须的。

以下代码选自万一的博客 :

uses NativeXml; //!

const xmlFile = ‘C:\Temp\xml_test_files\basic.xml’; //测试文件

{原样打开}
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Lines.LoadFromFile(xmlFile);
end;

{使用 NativeXml 打开}
procedure TForm1.Button1Click(Sender: TObject); var
xml: TNativeXml;
begin
xml := TNativeXml.Create(nil);
xml.LoadFromFile(xmlFile);
Memo1.Text := xml.WriteToString;
xml.Free;
end;

{使用缩进}
procedure TForm1.Button2Click(Sender: TObject);
var
xml: TNativeXml;
begin
xml := TNativeXml.Create(nil);
xml.LoadFromFile(xmlFile);
xml.XmlFormat := xfReadable; //格式枚举:xfCompact(压缩)、xfReadable(缩进)、xfPreserve(好像暂未处理)
Memo1.Text := xml.WriteToString;
xml.Free;
end;

{指定缩进文本}
procedure TForm1.Button3Click(Sender: TObject);
var
xml: TNativeXml;
begin
xml := TNativeXml.Create(nil);
xml.LoadFromFile(xmlFile);
xml.IndentString := ’ ‘; //IndentString 属性的默认值是 #9
xml.XmlFormat := xfReadable;
Memo1.Text := xml.WriteToString;
xml.Free;
end;
二、NativeXML对象的创建

 1、 XML:=TNativeXML.Create();//aowner可以为nil,可以是Self(这样可以随着宿主的释放而释放)

 2、xml := TNativeXml.CreateEx(False, //是否建立 Declaration 对象, 如:VersionString//显示 XML 版本;EncodingString //显示 XML 编码
                         True,  //是否建立跟节点
                         nil    //指定属主
                         );

 3、{使用 CreateName 建立可直接指定根节点的名称}    xml:=TNativeXml.CreateName('MyRoot'); 

 4、创那个键之后可以{使用 New 方法清空并重新构建}

procedure TForm1.Button4Click(Sender: TObject);
var
xml: TNativeXml;
begin
xml := TNativeXml.Create(nil);
xml.LoadFromFile(xmlFile);
ShowMessage(xml.WriteToString);
xml.New; // XML文件清空了相当于 xml.Clear;。
ShowMessage(xml.WriteToString);
xml.Free;
end;

5、{使用 ReadFromString 从文本读入}
procedure TForm1.Button5Click(Sender: TObject);
const
str = ‘

鏉庡洓

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值