如题,要源码

解决方案 »

  1.   

    procedure SaveToText(dataset:TDataset;FieldName:string;Showed:boolean=true);
    var F:TextFile;
        I,j:integer;
        exportsize:integer;
        TitleSize:integer;
        bookMark:TBook;
    begin
        assignFile(f,FieldName);
        rewrite(f);
        for i:=0 to dataset.FieldCount-1 do
        begin
            write(f,dataset.fields[i].displaylabel,'');
        end;
        writeln(f);
        dataset.DisableControls;
        bookMark:=dataset.GetBook;
        dataset.First;
        for i:=0 to dataset.RecordCount-1 do
        begin
            for j:=0 to dataset.FieldCount-1 do
            begin
                write(f,dataset.fields[j].asstring,'');
                write(f,char(#9),'');
             end;
             dataset.Next;
             writeln(f);
        end;
        dataset.GotoBook(bookMark);
        dataset.FreeBook(book);
        dataset.EnableControls;
        writeln(f);
        closeFile(f);
    end;
      

  2.   

    bcp 实用工具使您得以将 Transact-SQL 语句的结果集复制到数据文件中。该 Transact-SQL 语句可以是任何可返回结果集的有效语句,例如分布式查询或联接多个表的 SELECT 语句。例如,若要将所有作者的姓名从 pubs 数据库的 authors 表复制到 Authors.txt 文件,并按姓氏排序,可在命令提示符下执行以下命令:bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout Authors.txt -c -Sservername -Usa -Ppassword如果要确保数据的原有顺序在数据文件中得以保留,则应从查询大容量复制数据;从表或视图大容量复制数据时,不能保证数据写入数据文件的顺序。在数据文件中保留数据顺序使您得以在将数据从数据文件大容量复制回表中时,可以利用 ORDER 提示。使用 ORDER 提示可以显著提高大容量复制的性能。
      

  3.   

    http://www.erjid.com/index.asp
    这里有很详细的文件读写的说明,还有源码
      

  4.   

    to firetoucher:那么用你的方法可不可以到Delphi的前台上来实现呢?
      

  5.   

    var    memo:Tstrings;
           Book:tBook;//标签
           s:widestring;
           i,j:integer;
            
     begin
          memo:=tstringlist.Create;
          Book:=DataSet.GetBook; //标注当前纪录位置
          ADODataSet1.First; //移到第一条纪录
          while not  ADODataSet1.Eof do //如果到最后退出
            begin
              s:='';
              for i:=0 to ADODataSet1.FieldCount-1 do 
                 s:=s+'|'+ADODataSet1.Fields[I].AsString; //当前纪录增加到s用'|'隔开字段
              memo.Append(s);//将s追加到memo
              ADODataSet1.Next;
            end;
          ADODataSet1.GotoBook(Book); //返回原来纪录
           memo.savetofile('c:\ss.txt'); //保存到文件
        end;
      

  6.   

    新人注册,处女贴,up...up .... 密才研究出的方法,
    三个按钮 ,导出无类型文件,再导入数据库,
    procedure TForm1.Button1Click(Sender: TObject);
    begin
        if savedialog1.Execute then  //导出数据
        begin
       adodataset1.SaveToFile(savedialog1.FileName,pfadtg);
       // adodataset1.SaveToFile(savedialog1.FileName,pfxml);
        end;
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
          if opendialog1.Execute then   //导入
          begin adotable1.LoadFromFile(opendialog1.FileName);
          adotable1.First;
          end;
    end;procedure TForm1.Button3Click(Sender: TObject);
    var i,i2:integer;
    begin
           
         with adotable1 do
         begin for i:=1 to recordcount do
         begin
         i2:=adotable1['id'];
         edit1.Text:=inttostr(i2);
         adotable2.Active:=true;
         adotable2.Filter:=' id = '''+edit1.text+''' ';
         adotable2.Filtered:=true;     adotable2.edit;
         adotable2['name']:=dbedit1.text;
         adotable2['text']:=dbedit2.Text;
         adotable2.post;
         adotable1.Next;
         //adotable2.Active:=false;     }
    end;
    end;
    if adotable1.Eof=true
       then showmessage('finish!!!!')
    end;end.
      

  7.   

    adodataset1.SaveToFile(savedialog1.FileName,pfadtg);以pfadtg格式出来的为什么是乱码呀?