скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Ограничение log-файла по количеству строк



Автор: VID

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Ограничение log-файла, по количеству строк

Функция добавляет в файл LogFileName строку Log.
Если файл LogFileName не существует, он будет создан.
В параметре StrLimit указывается ограничение на
количество строк в лог-файле. Функция возвращает
число строк в лог-файле (LogFileName)

Зависимости: sysutils, classes, system
Автор:       VID, vidsnap@mail.ru, ICQ:132234868, Махачкала
Copyright:   VID
Дата:        11 июня 2002 г.
***************************************************** }

function WriteLog(LogFileName, Log: string; StrLimit: Integer): Integer;
var
  F: TextFile;
  function CheckLogFile: Integer;
  var
    I, Diff: Integer;
    FStr: TstringList;
  begin
    FStr := TStringList.Create;
    FStr.LoadFromFile(LogFileName);
    Diff := 0;
    if FStr.Count > StrLimit then
    begin
      Diff := FStr.Count - StrLimit;
      AssignFile(F, LogFileName);
      Rewrite(F);
      for I := Diff to FStr.Count - 1 do
        WriteLn(F, FStr[i]);
      CloseFile(F);
    end;
    Result := FStr.Count - Diff;
    FStr.Free;
  end;
begin
  Result := 0;
  if StrLimit < 1 then
    Exit;
  try
    AssignFile(F, LogFileName);
    if FileExists(LogFileName) then
      Append(f)
    else
      Rewrite(F);
    WriteLn(F, Log);
    Closefile(f);
  except Exit;
  end;
  Result := CheckLogFile;
end;





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook