我要将数据表中的数据按一定的格式导出成按TAB键做分割符的文本。应该怎么办??

解决方案 »

  1.   

    如果是SQL Server或Sybase,可以用BCP工具导出。
      

  2.   

    按照字符将数据导出
    在每个字段后面加上#9就是TAB键procedure Tform.Button2Click(Sender: TObject);
    var
      i:integer;
      str:string;
      strlist:tstringlist;
    begin
      if dbgrid1.DataSource.DataSet.IsEmpty then exit;
        Strlist:=TStringList.Create;
        try
          with DBGrid1.DataSource.DataSet do
          begin
            disablecontrols;
            first;
            while not eof do
            begin
              str:='';
              for i:=0 to fieldcount-1 do
                str:=str+fields[i].AsString+#9;
              Strlist.Add(str);
              next;
            end;
            strlist.SaveToFile(extractfiledir(application.ExeName)+'\txt\aaa.txt');
            first;
            enablecontrols;
          end;
          strlist.Free;
          messagebox(handle,'数据已经导出为txt目录下aaa.txt','提示',mb_ok);
        except
          Strlist.free;
          messagebox(handle,'数据导出失败','提示',mb_ok);
        end;
    end;
      

  3.   

    谢谢DelphiBird(爱你等于爱自己),再请问,如何将你导出的txt导入数据表?不用bcp。