我的思路是:我用adoquery查出来要导出的数据,然后判断当前目录是不是存在这个文件,如果不存在,创建;
然后一行行往里写数据,行之间的空格比较难以确定,因为数据长短不一,如何处理啊;
思路是有了,代码具体怎么实现啊?哪位大侠赐教!或者有更好的思路!
然后一行行往里写数据,行之间的空格比较难以确定,因为数据长短不一,如何处理啊;
思路是有了,代码具体怎么实现啊?哪位大侠赐教!或者有更好的思路!
你可以定义行间距的宽度为该列的宽度呀,这样的话就不会出现太多的长短不一了
DBGrid里面的值不就是你查出来的数据吗?还用同样的sql语句,利用
while not eof do
begin
…………
end;
像文件中添加
中,一条记录做为一行,下面是关键部分的代码,给你参考一下:
procedure TForm1.Button1Click(Sender: TObject);
var
Tablenamestr: string;
Expstr,Where,kong: string;
StrOut: tstringlist;
i:integer;
//DateTime: TDateTime;
begin
……
…… //以上代码实现数据的查询,就不多说了
StrOut:=tstringlist.Create; //创建
While Not Query1.Eof do
begin
Expstr:='';
For i:=0 to query1.FieldCount-1 do
Expstr:=Expstr + query1.Fields[i].AsString + '|||'; //我用‘|||’做为每个
//字段值的分隔符,你也可以用逗号之类的 delete(Expstr,length(Expstr)-2,3); //删掉最后一个‘|||’
StrOut.Add(Expstr);
query1.Next;
end;
StrOut.SaveToFile('E:\new\' + tablenamestr + '.txt' ); //导出到文本文档
end;
end;