procedure TForm1.Button1Click(Sender: TObject); begin DbgridToTxt(dbgrid1); end;
procedure Tform1.DbgridToTxt(source:Tobject); var filename:Textfile; Dataset:Tdataset; titlestr,valuestr,tempstr:string; counter:integer; begin if (source is Tdbgrid)then Dataset:=Tdbgrid(source).DataSource.DataSet else Dataset:=TDataset(source); if ((Dataset.IsEmpty)or(not Dataset.Active))then exit else begin Dataset.DisableControls; Dataset.First; if savedialog1.Execute then begin assignfile(filename,savedialog1.FileName); rewrite(filename); for counter:=0 to Dataset.FieldCount-1 do titlestr:=titlestr+char(9)+Dataset.Fields[counter].DisplayLabel; titlestr:=trim(titlestr); writeln(filename,titlestr); while not Dataset.Eof do begin valuestr:='; for counter:=0 to Dataset.FieldCount-1 do begin tempstr:=Dataset.Fields[counter].Text; valuestr:=valuestr+char(9)+tempstr; end; valuestr:=trim(valuestr); writeln(filename,valuestr); Dataset.Next; end; closefile(filename); end; Dataset.EnableControls; end; end;
----------------------------------------------
-
sSql:='select * from OpenRowset(''+'MSDASQL''+',''+'Driver={Microsoft Text Driver (*.txt; *.csv)}; DefaultDir='+sPath+';''+',''+'select * from '+sName+''+')';