Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.25;
Скачать: CL | DM;

Вниз

Как дописать в конец текстового файла?   Найти похожие ветки 

 
jeon   (2004-07-08 18:04) [0]

Как дописать в конец текстового файла? Или в середину. Если можно с примером...


 
ssk ©   (2004-07-08 18:08) [1]

так все таки куда? конец и середина - это разные вещи. подход в свою очередь тоже будет разный.


 
Fay ©   (2004-07-08 18:11) [2]

createfile/setfilepointer/writefile+f1


 
pasha_golub ©   (2004-07-08 18:14) [3]

Дописать Append


 
clickmaker ©   (2004-07-08 18:16) [4]

StringList.LoadFromFile
StringList.Insert / Add
StringList.SaveToFile


 
MMF   (2004-07-08 18:29) [5]

var
 hFile: THandle;
 size, Len: DWORD;
 buf: PChar;
 str: string;
begin
 if Not(FUseServerLog) then Exit;
 //если лог-файл еще не создан - создадим его
 hFile:=CreateFile(PChar(FLogFileName),GENERIC_READ or GENERIC_WRITE, 0, nil,
                   OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL,0);
 if (hFile=INVALID_HANDLE_VALUE) then
   begin
     ShowErrMessage("Не удалось создать лог-файл");
     Exit;
   end;
 str:= FormatDateTime("hh:nn:ss:zzz", Now())+#$09;
 buf:= PChar(str+ EventStr + #$0d +#$0a);
 //дописываем в файл
 size:= GetFileSize(hFile, NIL);
 Len:= Length(Buf);
 try
   SetFilePointer(hFile, size + Len, nil, FILE_BEGIN);
   SetEndOfFile(hFile);
   SetFilePointer(hFile, size, nil, FILE_BEGIN);
   WriteFile(hFile, Buf^, Len, size, nil);
 finally
   CloseHandle(hFile);
 end;
end;


 
IceBeerg ©   (2004-07-08 18:30) [6]

В конец это Append
А в середину это Seek Trunc от FileSize/2


 
Fay ©   (2004-07-08 19:32) [7]

2IceBeerg ©   (08.07.04 18:30) [6]
div. Есть такое слово


 
wl   (2004-07-08 19:52) [8]

Чём только не пользуются для работы с файлами. F1 TFileStream


 
jeon   (2004-07-09 06:35) [9]

Спасибо большое...


 
Fay   (2004-07-09 08:18) [10]

2MMF   (08.07.04 18:29) [5]
Чего-то Вы страшное написали 8). Это делается чуть проще.

var
 h, n : DWORD;
 s : string;
begin
 h := CreateFile(PChar(FLogFileName), GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ, nil, OPEN_ALWAYS, 0, 0);
 if h = INVALID_HANDLE_VALUE then
   Application.MessageBox(PChar(SysErrorMessage(GetLastError)), "Еррор!!!", MB_OK or MB_ICONERROR)
 else
   try
     s := FormatDateTime("hh:nn:ss:zzz", Now()) + #09 + EventStr + #13#10;
     SetFilepointer(h, 0, nil, FILE_END);
     WriteFile(h, PChar(s)^, Length(s), n, nil);
   finally
     CloseHandle(h);
   end;
end;


 
MMF   (2004-07-09 10:42) [11]

Fay  (09.07.04 08:18) [10]
пасиба. Сложно написать легко, а просто и понятно - сложнее :-)



Страницы: 1 вся ветка

Текущий архив: 2004.07.25;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.047 c
1-1089695944
bobj
2004-07-13 09:19
2004.07.25
Обработка TreeView


14-1088540954
Marser
2004-06-30 00:29
2004.07.25
Винница!!! Земляки, отзовитесь!


1-1089721797
BillyJeans
2004-07-13 16:29
2004.07.25
TreeView и ScrollBars


14-1089079484
Думкин
2004-07-06 06:04
2004.07.25
С днем рождения! 6 июня


14-1088943121
Ломброзо
2004-07-04 16:12
2004.07.25
Занесло на рынок





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский