给你一段代码吧! procedure TForm1.FormCreate(Sender: TObject); var i,j: integer; begin for i := 0 to StringGrid1.ColCount - 1 do begin StringGrid1.Cells[i,0] := '字段'+inttostr(i); end; for i := 1 to StringGrid1.RowCount - 1 do begin for j := 0 to StringGrid1.ColCount - 1 do begin StringGrid1.Cells[j,i] := 'asdf' end; end; end;procedure TForm1.BitBtn1Click(Sender: TObject); var i,j: integer; begin for i := 0 to StringGrid1.ColCount - 1 do begin ClientDataSet1.FieldDefs.Add(StringGrid1.Cells[i,0],ftString,20); end; ClientdataSet1.CreateDataSet; for i := 1 to StringGrid1.RowCount do begin ClientDataSet1.Append; for j := 0 to ClientDataset1.FieldCount - 1 do begin ClientDataSet1.Fields[j].AsString := StringGrid1.Cells[j,i]; end; end; end;
我是做基于XML的使用挖掘,做了一个程序把日志文本文件读取到dbgrid并转换为XML文件,文本读取到stringgrid比较容易,但stringgrid数据转换为dbgrid数据比较难,能告诉怎么把stringgrid的内容存为xml啊,万分感谢
先用ClientDataSet构建一个表
然后用个循环在将数据一条一条的读取出来就可以了啊
procedure TForm1.FormCreate(Sender: TObject);
var
i,j: integer;
begin
for i := 0 to StringGrid1.ColCount - 1 do
begin
StringGrid1.Cells[i,0] := '字段'+inttostr(i);
end;
for i := 1 to StringGrid1.RowCount - 1 do
begin
for j := 0 to StringGrid1.ColCount - 1 do
begin
StringGrid1.Cells[j,i] := 'asdf'
end;
end;
end;procedure TForm1.BitBtn1Click(Sender: TObject);
var
i,j: integer;
begin
for i := 0 to StringGrid1.ColCount - 1 do
begin
ClientDataSet1.FieldDefs.Add(StringGrid1.Cells[i,0],ftString,20);
end;
ClientdataSet1.CreateDataSet;
for i := 1 to StringGrid1.RowCount do
begin
ClientDataSet1.Append;
for j := 0 to ClientDataset1.FieldCount - 1 do
begin
ClientDataSet1.Fields[j].AsString := StringGrid1.Cells[j,i];
end;
end;
end;