Delphi XML Data Binding

先生成要操作的XML文件的类: 首先新建->其它->XML->XML Data Binding

找到相应XML文件,一步一步确定。


完了后会生成相应的类单元文件(test.pas)。 测试的XML文件(test.xml)如下:

<?xml version="1.0" encoding="UTF-8"?>
<contrys>
 <homes id="n1"><names>1</names><sum>s1</sum></homes>
 <homes id="n2"><names>2</names><sum>s2</sum></homes>
 <homes id="n3"><names>3</names><sum>s3</sum></homes>
 <homes id="n4"><names>4</names><sum>s4</sum></homes>
</contrys>

然后放一个(XMLDocument控件(XMLDocument2),设置其FileName属性,找到我们的XML文件test.xml。 相应操作的代码如下:

uses test;    //类由XML Data Binding自动产生,新建->其它->XML页里

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
  contrys: IXMLContrysType;
  child2: IXMLHomesType;
begin
  contrys := Getcontrys(XMLDocument2);
  XMLDocument2.Options := XMLDocument2.Options+[doAutoSave];  //更改后自动保存
  //ShowMessage(contrys.Homes[1].Sum);
  //  ------------添加节点
  child2 := contrys.Add;    //与Insert(-1)方法一样的效果
  child2.Id := 'n4';
  child2.Names := 4;
  child2.Sum := 's4';
  contrys.Delete(0);        //删除操作
  contrys.Homes[1].Id := 'changed'; //更改内容
end;