uses db, BufDataset, XMLDatapacketReader;
var
bds, bds2 : TBufDataset;
begin
bds := TBufDataset.Create(YourForm);
with bds do begin
// define fields
FieldDefs.Add('id', ftInteger);
FieldDefs.Add('name', ftString, 30);
CreateDataset;
// add data
AppendRecord([1, 'val1']);
AppendRecord([2, 'val2']);
SaveToFile('dataset.xml', dfXML); // save
// save
MergeChangeLog; // Mostly we don't need persistent changelog
SaveToFile('dataset.xml', dfXML);
end;
bds2 := TBufDataset.Create(YourForm);
bds2.LoadFromFile('dataset.xml', dfXML);
end;