我的思路是:我用adoquery查出来要导出的数据,然后判断当前目录是不是存在这个文件,如果不存在,创建;
然后一行行往里写数据,行之间的空格比较难以确定,因为数据长短不一,如何处理啊;
思路是有了,代码具体怎么实现啊?哪位大侠赐教!或者有更好的思路!
然后一行行往里写数据,行之间的空格比较难以确定,因为数据长短不一,如何处理啊;
思路是有了,代码具体怎么实现啊?哪位大侠赐教!或者有更好的思路!
解决方案 »
- 学玩一些基本语法后就应该开始学习DElphi自带的组件吗
- IdTCPClient 和IDTCPServer传输图片的问题
- 安装Delphi7.0问题出现了问题 求助大家~
- 安装第三控件dpK时,怎么样让他把搜索路径自己添加进去
- 如何判断相邻的色码颜色相近?
- 如何取得QQ登陆窗口的句柄,并发送消息让保存的密码显示出来而不是显示掩码呢?
- 求助,dbgrid的简单问题。。
- 请教一个关于三层的入门级问题??
- wise制作安装程序时,拖动安装界面的窗口,原窗口不消失,怎么解决?
- 谁知道调用什么函数出现浏览网上邻居的对话框?
- 为什么我在QReport中添加QRexpr控件求某字段和,什么结果都没有?
- 如何得到每年的第一天所对应的日期
你可以定义行间距的宽度为该列的宽度呀,这样的话就不会出现太多的长短不一了
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;