delphi怎样写日志文件?就是我的串口每收到一次数据就写到文本文件里?

来自: wishme3, 时间: 2005-06-22 15:23:00, ID: 3110622  
var
CommStr:string;
begin
CommStr:=MyComm.readcomm;//假如CommStr是每次收到的串口数据
//现在要求把CommStr的数据写到一个文本文件里,保存到c:/log.txt中
end;
谁有代码吗?

来自: xianguo, 时间: 2005-06-22 15:51:51, ID: 3110640  
var F: TextFile;

begin
AssignFile(F, c:/log.txt');
Rewrite(F);
Writeln(F, 'Just created file with this text in it...');
CloseFile(F);
end;

来自: luckysw, 时间: 2005-06-22 15:56:34, ID: 3110655  
唉,来晚了
var F: TextFile;
begin
AssignFile(F, c:/log.txt');
Append(F);
Writeln(F, 'Just created file with this text in it...');
CloseFile(F);
end;
给分吧

来自: wishme3, 时间: 2005-06-22 16:18:23, ID: 3110688  
这样每次文件里只会留下最后一次的数据啊

来自: wishme3, 时间: 2005-06-22 16:26:51, ID: 3110703  
比如:
//写文件
procedure Tform1.writeToFile(s:string);
var F:TextFile;
begin
 assignfile(f,'c:/cgp.txt');
 try
   rewrite(f);
   writeln(f,s);
 finally
   closefile(f);
 end;
end;

//调用
procedure Tform1.Button2Click(Sender: TObject);
begin
writeToFile('ss');
end;

按10下Button2里面怎么只有一行数据?

来自: wishme3, 时间: 2005-06-22 17:32:56, ID: 3110790  
知道了
另外:如果长年累月往该文件写数据,数据量又大,那不是文件会非常大?
我想知道大家是怎么处理这个问题的

来自: xianguo, 时间: 2005-06-22 17:37:40, ID: 3110795  
你可以每天一个文件(根据日期命名)

来自: shangchao, 时间: 2005-06-22 17:41:38, ID: 3110802  
下面是我的程序中一段,把文件存为用','分隔的文本文件.

if FileExists('shang_baud.txt') then
           begin
                AssignFile(F,'shang_baud.txt');
                append(F);
                for i:=0 to 4 do write(f,stringgrid1.Cells[i,stringgrid1.RowCount-1],',');
                writeln(f,stringgrid1.Cells[5,stringgrid1.RowCount-1]);
                CloseFile(F);
          end else
              begin
                AssignFile(F,'shang_baud.txt');
                rewrite(F);
                for i:=0 to 4 do write(f,stringgrid1.Cells[i,stringgrid1.RowCount-1],',');
                writeln(f,stringgrid1.Cells[5,stringgrid1.RowCount-1]);
                CloseFile(F);
              end
时间长了的文件,可以用时间作为文件名,一个月建一个文件.

来自: sleeves, 时间: 2005-06-23 0:11:29, ID: 3111060  
procedure WriteLog(filename: string; buff: string);
var
logfile: Textfile;
begin
//文件锁
LockFile := TCriticalSection.Create;
LockFile.Acquire;
try
  assignfile(logfile, filename);
  if FileExists(filename) then
    append(logfile)
  else
    rewrite(logfile);

  writeln(logfile, '[' + formatdateTime('yyyy-mm-dd hh:mm:ss:zzz', Now) + '] '
    + buff);
  closefile(logfile);
finally
  LockFile.Release;
end;
end;

http://www.kfdoc.com/delphibbs2005/311/3110622.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冷月宫主

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值