Тогда открывайте файл не как текстовый, а как
file of byte, размер будет совпадать со значением FileSize, только записывать инфу придётся немного по-другому, с самостоятельным переводом каретки #13#10 в конце каждой строки
Добавлено немного позже:
Примерно вот так ещё можно
Код:
procedure AddToLog(s: string);
var
f : TextFile; fs: file of byte;
begin
AssignFile(f, fn); AssignFile(fs, fn);
if FileExists(fn) then Append(f) else Rewrite(f);
WriteLn(f, DateTimeToStr(Now) + s);
CloseFile(f); Reset(fs);
if FileSize(fs) > 100 then
begin
CloseFile(fs);
RenameFile(fn, ChangeFileExt(ExtractFileName(fn), '') +
FormatDateTime('dd-mm-yyyy hh-nn-ss', Now) + '.txt');
end else CloseFile(fs);
end;