下面的代码可以把adoquery查询出的记录导出到指定的*.txt中procedure TForm1.Button1Click(Sender: TObject);
var
  f:Textfile;
  str:string;
  i,j:integer;
begin
  assignfile(f, ExtractFilePath(Application.ExeName)+ 'demo.txt');
  rewrite(f);
  for j:= 0 to Adoquery.recordcount-1 do
    begin
      str:='';
      for i:= 0 to Adoquery.fieldcount-1 do
        begin
          str:=str+Adoquery.fields[i].asstring+',';
        end;
      writeln(f,str);
      Adoquery.next;
    end;
  closefile(f);
end;

解决方案 »

  1.   

    用writeln(),我有原代码,留下联系方式!
      

  2.   

    我的qq是28942615,邮箱是[email protected]
    谢谢各位的帮助,深表感谢
      

  3.   

    MDB文件的导出-使用 DAO 
    在很多 VB 的MDB文件书籍中,都会很完整的提到:如何由其他种类的文件中將资料导入MDB文件,但是却很少有书提到:如何將MDB文件中的资料,导出到各种不同的文件类型的文件中,连 VB 的 Help 中也是这样!或许是大家都认为MDB文件主题的重点是在MDB文件本身吧!但是,在实际的MDB文件程式運用中,却常常需要將MDB文件导出到各种不同的文件类型的文件中,这些文件可能是 DBase文件、文本文件 (.Txt)、Excel 文件、Html 文件、Access 文件或其他类型的MDB文件文件 (ODBC)...等。在本主题中,考虑到並不是每一个人都有 Oracle 或 SQL Server 的环境,为了让大家都能夠实行,我们將以 Access MDB文件来作练习,而练习的文件也使用 VB 本身提供的 Biblio.mdb (位于各版本 VB 的目录下)。预计要练习导出的文件类型有五种:DBase文件、文本文件 (.Txt)、Html 文件、Excel 文件、Access 文件。除了这五种之外,下面的命令可以將MDB文件导出到任一种 VB 支持的MDB文件或文件中。在练习之前,要將导出文件的 SQL 命令先说明一下:SELECT Table.Fields INTO [dbms type;DATABASE=path].[unqualified filename] FROM [Table or Tables]
    SELECT Table.Fields INTO [MDB文件种类;DATABASE=MDB文件路径].[MDB文件文件名称] FROM [Table or Tables]至于【MDB文件种类】及【MDB文件路径】,视MDB文件或文件类型之不同而异,详见【注一】。
    如果上面说的都清楚了,那我们要开始这一个练习了!在 Form 上放置一个 CommandButton,加入 Microsoft DAO 3.51 Object Library,我们將使用 Biblio.mdb 的 authors Table,在 Command1_Click 中加入以下程序代码:Dim db As Database
    Set db = Workspaces(0).OpenDatabase(App.Path & "\biblio.mdb")
    'db.execute "SELECT Table.Fields INTO [dbms type;DATABASE=path].[unqualified filename] FROM [Table or Tables]"在以上程式中,db.execute 指令行之指令依MDB文件或文件的种类说明如下:一、DBase文件SQL 命令:SELECT * INTO [dBase III;DATABASE=MDB文件路径].[dbase文件名称] FROM [authors]
    db.Execute "SELECT * INTO [dBase III;DATABASE=C:\test].[authors.DBF] FROM [authors]"
    注意事項:
    1、authors.DBF 事先不可存在,否则会产生错误!
    2、若您沒有 Dbase,您可以使用 Access 来连結这个 Table,以便观察結果!二、文本文件 (.Txt)SQL 命令:SELECT * INTO [Text;DATABASE=文本文件路径].[文本文件名称] FROM [authors]
    db.Execute "SELECT * INTO [Text;DATABASE=C:\test].[authors.TXT] FROM [authors]"
    注意事項:
    1、authors.TXT 事先不可存在,否则会产生错误!
    2、此命令会产生的文件有二个,第一个就是文本文件 authors.TXT,第二个是 Schema.ini。
    3、文本文件之格式为 CSV 之文件格式,以逗点分开,实际呈现方式如下:  "Au_ID","Author","Year Born"
      1,"Jacobs, Russell",1950
      2,"Metzger, Philip W.",19424、Schema.ini 若事先不存在会新产生一个,若已存在,则会在原文件后面直接 Append。
    5、至于 Schema.ini 的內容为此次导出的相关资讯,格式同一般的 Ini 档,详細內容如下:  [authors.TXT]
      ColNameHeader=True
      CharacterSet=OEM
      Format=CSVDelimited
      Col1=Au_ID Integer
      Col2=Author Char Width 50
      Col3="Year Born" Short三、Html 文件SQL 命令:SELECT * INTO [Excel 8.0;DATABASE=Html文件路径].[Html文件名称] FROM [authors]
    db.Execute "SELECT * INTO [HTML Export;DATABASE=C:\test].[authors.HTM] FROM [authors]"
    注意事項:
    1、authors.HTM 事先不可存在,否则会产生错误!
    2、此命令会产生的文件有二个,第一个就是文本文件 authors.HTM,第二个是 Schema.ini。
    3、Schema.ini 若事先不存在会新产生一个,若已存在,则会在原文件后面直接 Append。
    4、至于 Schema.ini 的內容为此次导出的相关资讯,格式同一般的 Ini 档,详細內容如下:  [authors.HTM]
      ColNameHeader=True
      CharacterSet=ANSI
      Format=HTML
      Col1=Au_ID Integer
      Col2=Author Char Width 50
      Col3="Year Born" Short四、Excel 文件SQL 命令:SELECT * INTO [Excel 8.0;DATABASE=文件路径+档名].[工作表名称] FROM [authors]
    db.Execute "SELECT * INTO [Excel 8.0;DATABASE=C:\test\authors.XLS].[authors] FROM [authors]"
    注意事項:
    1、authors.XLS 可事先存在,也可以不存在,会自动产生一个。
    2、工作表 authors 事先不可存在,否则会产生错误!五、Access 文件SQL 命令:SELECT * INTO [新MDB文件路径+档名][新表名称] FROM [authors]
    '导出到同一MDB文件 ( 新 Table 为 authors1 )
    '新 Table authors1 事先不可存在,否则会产生错误!
    db.Execute "SELECT * INTO [authors1] FROM [authors]"
    '导出到不同的MDB文件 ( 新MDB文件为 db1,新 Table 为 authors )
    '新MDB文件 db1事先必須存在,否则会产生错误!
    '但是其中新 Table authors 事先不可存在,否则会产生错误!
    db.Execute "SELECT * INTO [C:\test\db1.mdb].[authors] FROM [authors]" 注一:各种可能的MDB文件种类 Connect 属性設定方式:MDB文件种类 MDB文件宣告方式 MDB文件路径 (或加上档名) 
    Microsoft Jet Database [database]; drive:\path\filename.mdb 
    dBASE III dBASE III; drive:\path 
    dBASE IV dBASE IV; drive:\path 
    dBASE 5 dBASE 5.0; drive:\path 
    Paradox 3.x Paradox 3.x; drive:\path 
    Paradox 4.x Paradox 4.x; drive:\path 
    Paradox 5.x Paradox 5.x; drive:\path 
    Microsoft FoxPro 2.0 FoxPro 2.0; drive:\path 
    Microsoft FoxPro 2.5 FoxPro 2.5; drive:\path 
    Microsoft FoxPro 2.6