求教将ADOQuery1中的数据保存成txt格式的delphi源码?

解决方案 »

  1.   

    adoquery1.SaveToFile('aa.txt') 不知道行否
      

  2.   

    var
      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;
      

  3.   

    你可以用batchmove来做,也可以用一个最基本的方法来做。
    那就是你定义一个文本文件,把你的adoquery中的记录一条条的写入这个
    文件中,这样是最好控制的,我用过。不错的。前一种用时不好控制。
      

  4.   

    一条一条写很慢的
    我觉得最好是用控件ehlib,这组控件里面有各dbgirdeh,继承dbgrid,利用dbgrideh的一个方法可以将数据导出为txt,execl等格式。
      

  5.   

    谁能告知dbgrideh的那个方法可以将数据导成txt格式,
    代码怎么实现?
      

  6.   

    ehlib导出方法:
    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;