您的位置:首页 > 其它

TClientDataSet[2]: Data、XMLData

2017-08-03 00:02 525 查看
TClientDataSet.Data { 数据的二进制格式的描述 }

TClientDataSet.XMLData { 数据的 XML 格式的描述 }

//先在窗体上放置 ClientDataSet1、Memo1 和三个按钮

uses XMLDoc, IOUtils; { 分别提供 FormatXMLData 和 TFile.ReadAllText 函数 }

{ 设定当前目录 }

procedure TForm1.FormCreate(Sender: TObject);

begin

ChDir(GetEnvironmentVariable(‘COMMONPROGRAMFILES’) + ‘\CodeGear Shared\Data\’);

end;

{ 读取 XMLData 测试 }

procedure TForm1.Button1Click(Sender: TObject);

begin

ClientDataSet1.LoadFromFile(‘employee.cds’);

Memo1.Text := FormatXMLData(ClientDataSet1.XMLData);

end;

{ 写入 XMLData 测试 }

procedure TForm1.Button2Click(Sender: TObject);

var

str: string;

begin

str := TFile.ReadAllText(‘country.xml’);

ClientDataSet1.XMLData := str;

Memo1.Text := FormatXMLData(ClientDataSet1.XMLData);

end;

{ 读写 Data 测试 }

procedure TForm1.Button3Click(Sender: TObject);

var

ClientDataSet2: TClientDataSet;

begin

ClientDataSet2 := TClientDataSet.Create(Self);

ClientDataSet2.LoadFromFile(‘parts.cds’);

ClientDataSet1.Data := ClientDataSet2.Data;

ClientDataSet2.Free;

Memo1.Text := FormatXMLData(ClientDataSet1.XMLData);

end;

{ 合并两个数据集 }

procedure TForm1.Button4Click(Sender: TObject);

var

cds1,cds2: TClientDataSet;

begin

cds1 := TClientDataSet.Create(Self);

cds2 := TClientDataSet.Create(Self);

cds1.LoadFromFile(‘industry.cds’);

ShowMessage(IntToStr(cds1.RecordCount)); { 7 }

//把 cds1 的结构与数据复制到 cds2

cds2.Data := cds1.Data;

ShowMessage(IntToStr(cds2.RecordCount)); { 7 }

//把 cds1 的数据合并到 cds2

cds2.AppendData(cds1.Data, True);

ShowMessage(IntToStr(cds2.RecordCount)); { 14 }

//把 cds2 的数据合并到 cds1

cds1.AppendData(cds2.Data, True);

ShowMessage(IntToStr(cds1.RecordCount)); { 21 }

cds1.Free;

cds2.Free;

end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: