求教将ADOQuery1中的数据保存成txt格式的delphi源码?
解决方案 »
- 主从表 问题。ADO控件中 多个Parameters使用了同一个来源,怎么做?
- 求DELPHI教学视频下载
- 大家帮我看看这个问题,编译老说array type required,谢谢!
- 升四个角角, 散分啦, 并请关注我的问题
- 超级简单问题:怎么获得系统时间?
- 高分求助,怎样实现二级COMBOX?
- Operator not applicable to this operand type错误怎么改?
- printer selected is not valid ???在线等
- 如何删除一个已知道文件名和路径的文件??
- 要在任务栏里显示程序的图标(就想Foxmail一样)怎么做?
- 如何用Delphi写一个扫描网络上另一台机子端口开放的程序
- "Socket Error 10061" : 怎么解决?(以前的相关贴子打不开)谢谢
file1:textfile;
s:string;
begin
system.assign(file1,'test.txt');
system.reset(file1)
adoquery1.first;
while not adoquery1.eof do
begin
s:=
writeln(file1,s);
adoquery1.next;
end;
system.close(file1);
end;
那就是你定义一个文本文件,把你的adoquery中的记录一条条的写入这个
文件中,这样是最好控制的,我用过。不错的。前一种用时不好控制。
我觉得最好是用控件ehlib,这组控件里面有各dbgirdeh,继承dbgrid,利用dbgrideh的一个方法可以将数据导出为txt,execl等格式。
代码怎么实现?
procedure tFrmDataManage.GridSaveAS (grid: TDBGridEh);
var ExpClass:TDBGridEhExportClass;
Ext:String; SaveDlg:TSaveDialog;
ExportAll:Boolean;
begin
ExportAll:=True; //缺省情况下导出所有数据
SaveDlg:=TSaveDialog.Create(Application);
SaveDlg.Filter:='Excel表格(*.XLS)|*.XLS|HTML文档(*.HTM)|*.HTM|RTF格式(*.RTF)|*.RTF|纯文本文件(*.TXT)|*.TXT|逗号分隔文本格式(*.CSV)|*.CSV';
SaveDlg.FileName:='未命名';
SaveDlg.Options := [ofOverwritePrompt,ofHideReadOnly, ofEnableSizing];
if SaveDlg.Execute then
begin
case SaveDlg.FilterIndex of
1: begin ExpClass := TDBGridEhExportAsXLS; Ext := 'xls'; end;
2: begin ExpClass := TDBGridEhExportAsHTML; Ext := 'htm'; end;
3: begin ExpClass := TDBGridEhExportAsRTF; Ext := 'rtf'; end;
4: begin ExpClass := TDBGridEhExportAsText; Ext := 'txt'; end;
5: begin ExpClass := TDBGridEhExportAsCSV; Ext := 'csv'; end;
else
ExpClass := nil; Ext := '';
end;
if ExpClass <> nil then
begin
if UpperCase(Copy(SaveDlg.FileName,Length(SaveDlg.FileName)-2,3)) <> UpperCase(Ext) then
SaveDlg.FileName := SaveDlg.FileName + '.' + Ext;
//如果grid中有选择的区域,则只导出所选择的区域
if grid.Selection.SelectionType<>gstNon then ExportAll:=False;
Try
SaveDBGridEhToExportFile(ExpClass,grid,SaveDlg.FileName,ExportAll);
Except
On E:Exception do
begin
MessageBox(0,LPCTSTR('保存文件发生异常,请检查是否有重名文件并且该文件没有被打开!'),'注意',MB_OK or MB_ICONWARNING);
Exit;
end;
End;
end;
end;
end;