歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Delphi中寫日志文件log總結

思想:我們在寫日志文件的時候習慣將所有的日志文件全部Add到一個List鏈表裡面,然後用定時器定時從List鏈表中取數據寫文件。

所以我使用TStringList,將所以日志Add到TStringList裡面,然後用定時器從TStringList裡面取數據寫日志。

procedure Tfoffertool.OnReadListTimer(Sender: TObject);
var
  sysDir : string;
  strMsg : string;
  logfile: string;

begin
  //創建日志文件
  sysDir:=extractfilepath(application.ExeName);
  logfile:=formatdatetime('yyyyy-mm-dd', Now()) + '.log'; // 在字符串前加上日期
  if not directoryexists(sysdir) then
    createdir(sysdir);
  AssignFile(mylog,logfile);
  if fileexists(sysDir+logfile) then
  append(mylog)
  else
  rewrite(mylog);
  while ((mylogList.Count) > 0) do
  begin
    strMsg := mylogList.Text;              //從List裡面讀取數據這個是讀取塊

    //好像也可以這樣每次讀取一行:

    //strMsg := mylogList[0];

    //mylogList.Delete(0);
    mmolog.Text := mmolog.Text + strMsg;    //將數據顯示在TMemo控件中
    mylogList.Clear;
    Writeln(mylog,strMsg);                //寫日志裡
  end;
  CloseFile(mylog);                        //關閉文件流
end;

Copyright © Linux教程網 All Rights Reserved