Процедура Truncate в Delphi зменшує розмір файлу, видаляючи всі дані після поточної позиції.
System unit
procedure Truncate (var FileHandle : File);
Процедура Truncate усікає файл у поточній позиції файлу. Усі дані після поточної позиції файлу стираються.
Файл повинен бути назначений за допомогою Assign і відкритий за допомогою RewRite або Reset.
Текстові файли не підтримуються.
Процедура Truncate: Запис у файл, потім його усічення
var
myWord, myWord1, myWord2 : Word;
myFile : File of Word;
begin
// Спроба відкрити бінарний файл Test.bin для запису
AssignFile(myFile, 'Test.cus');
ReWrite(myFile);
// Записуємо пару слів в файл Word
myWord1 := 234;
myWord2 := 567;
Write(myFile, myWord1, myWord2);
// Закриття файлу
CloseFile(myFile);
// Показ вмісту файлу
Reset(myFile);
ShowMessage('Перед усіченням :');
while not Eof(myFile) do
begin
Read(myFile, myWord);
ShowMessage(IntToStr(myWord));
end;
// Закриття, повторне відкриття та усічення після першого слова
CloseFile(myFile);
FileMode := 2;
Reset(myFile);
Read(myFile, myWord);
Truncate(myFile);
CloseFile(myFile);
// Знову показуємо вміст файлу
Reset(myFile);
ShowMessage('Після усічення :');
while not Eof(myFile) do
begin
Read(myFile, myWord);
ShowMessage(IntToStr(myWord));
end;
// Закриття файлу востаннє
CloseFile(myFile);
end;
Результат
Перед усіченням:
234
567
Після усічення:
234
Подібні функції, процедури та команди
Append — відкриває текстовий файл для додавання записів у файл (додає в кінець файлу).
Erase — стирає файл.
FilePos — дає позицію файлу у двійковому або текстовому файлі.
