Delphi DBGrid 保存TXT


本文整理自网络,侵删。

 
function TForm1.DBGridToTxt(aDBGrid:TDBGrid;isTitle:boolean):boolean;
var
 s:string;

 FileName:string;
 sTemp:TSTrings;
 i : integer;
 j : integer;
 SFD:TSaveDialog;
 RecNo:integer;
begin
  SFD:=TSaveDialog.Create(nil);
  SFD.Filter:='文本文件|*.TXT';
   SFD.DefaultExt := '.TXT';

   sTemp := TStringList.Create;
   try
 if SFD.Execute then
 Begin
 FileName := SFD.FileName;
 if isTitle then // 带标题
 begin
 s := '';
 for i := 0 to aDBGrid.Columns.Count-1 do
 begin
 if aDBGrid.Columns[i].Visible then
 s := s + Format('%s'+
 '|',[aDBGrid.columns[i].title.caption]);
 end;
 sTemp.Add(s);
 end;
 RecNo := aDBGrid.DataSource.DataSet.RecNo;
 aDBGrid.DataSource.DataSet.DisableControls;
 aDBGrid.DataSource.DataSet.First;
 while not aDBGrid.DataSource.DataSet.Eof do
 begin
 s := '';
 for j:=0 to aDBGrid.Columns.Count-1 do
 begin
 if aDBGrid.Columns[j].Visible then
 s := s + Format('%s',[aDBGrid.DataSource.DataSet.FieldByName(
 aDBGrid.Columns[j].FieldName).asString])+'|';
 end;
 sTemp.Add(s);
 sTemp.Add('');
 aDBGrid.DataSource.DataSet.Next;
 end;
 sTemp.SaveToFile(FileName);
 aDBGrid.DataSource.DataSet.RecNo := RecNo;
 aDBGrid.DataSource.DataSet.EnableControls;
 end;
 finally
 SFD.Free;
 sTemp.Free;
 end;
end;

相关阅读 >>

Delphi xe10 创建匿名线程

Delphi 文件分割合并

Delphi资源文件的详细使用方法

Delphi中通过tclientsocket获取公网(wan)ip地址

Delphi 自带的字符串分割函数

Delphi 取得开机时间 开机时间总长度(可精确到秒,分钟等)

Delphi 将鼠标锁定在一定范围

Delphi windows的消息传递--消息盒子

Delphi 四舍五入取整函数

decodedate:从一个tdatetime变量中提取年、月、日数值

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...