保存文件小案例

字体大小: 中小 标准 ->行高大小: 标准


//  定时保存文本文件
procedure TForm1.Timer1Timer(Sender: TObject);
var
  afile:   TFileStream;               // 文件流
  str,da,StrToWrite : string;         // 字符串类型
begin
  //  写入txt
  if Txt_Flag = true  then            // 文件名 设置完成
  begin
    StrToWrite:='';
    StrToWrite:=StrToWrite+output_X.Text+',  '+output_Ang.Text+',  '+output_l.Text;  // 3个Edit或Combobox控件
    str := TimeToStr(Time);                                 // Time时间值,转换为字符类型
    da  := DateToStr(Date);                                 // Date日期值,转换为字符类型 
    StrToWrite:= da+',  '+str+',  '+StrToWrite+#13#10;      // 生成一行字符串,包含时间、日期等 + 换行符
    if not FileExists( SaveDialog1.FileName+'.txt')   then  // 如果文件不存在,创建再写
    begin
      try                             
        afile   :=   TFileStream.Create( SaveDialog1.FileName+'.txt',fmCreate); // 使用文件流创建
        afile.WriteBuffer(PChar(StrToWrite)^,Length(StrToWrite));               // 写入文件一行
      finally
        afile.free;                                                             // 释放文件流
      end;
    end
    else begin                        // 文件名 未设置
      try
        afile   :=   TFileStream.Create( SaveDialog1.FileName+'.txt',fmOpenWrite); // 打开SaveDialog1指定文件名。并通过文件流创建文件
        afile.Seek(0,soEnd);                                                       // 设置文件的长度
        afile.WriteBuffer(PChar(StrToWrite)^,Length(StrToWrite));                  // 写入文件
      finally
        afile.Free;                                                                // 释放文件流
      end;
    end;
  end;
end;

//  设置文件名
procedure TForm1.SaveClick(Sender: TObject);
begin
  if SaveDialog1.Execute then                 // SaveDialog1 是一个TSaveDialog 组件
  begin
     Txt_Flag:=True;                          // 完成文件名设置 Txt_Flag为真     
  end;
end;

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/70545.html