Язык:
Русский
English
Truncate (процедура)
Усекает файл в текущей позиции файла.
Объявление
Procedure Truncate(Var F);
Режим
Windows, Real, Protected
Замечания
F - файловая переменная любого типа, кроме текстового. Всё, что находится за текущей позицией файла, удаляется, и возвращается признак конца файла (Eof(F) = True).
В режиме {$I+} при возникновении ошибки, функция IOResult возвращает отличное от нуля значение.
Ограничения
Файл F должен быть открыт.
См. также
Пример
Язык:
Русский
English
{ Пример программы для процедуры Truncate }
uses Crt;
var
F : file of Integer;
I, J : Integer;
begin
Assign(F, 'TEST.INT');
ReWrite(F);
for I := 1 to 6 do
Write(F, I);
WriteLn('Файл до усечения:');
FileMode := 0; { режим только-чтение }
Reset(F);
while not EOF(F) do
begin
Read(F, I);
WriteLn(I);
end;
FileMode := 2; { чтение и запись }
Reset(F);
for I := 1 to 3 do
Read(F, J); { Считываем 3 записи }
Truncate(F); { Усекаем здесь файл }
WriteLn;
WriteLn('Файл после усечения:');
FileMode := 0; { режим только-чтение }
Reset(F);
while not EOF(F) do
begin
Read(F, I);
WriteLn(I);
end;
Close(F);
Erase(F);
end.
var
F : file of Integer;
I, J : Integer;
begin
Assign(F, 'TEST.INT');
ReWrite(F);
for I := 1 to 6 do
Write(F, I);
WriteLn('Файл до усечения:');
FileMode := 0; { режим только-чтение }
Reset(F);
while not EOF(F) do
begin
Read(F, I);
WriteLn(I);
end;
FileMode := 2; { чтение и запись }
Reset(F);
for I := 1 to 3 do
Read(F, J); { Считываем 3 записи }
Truncate(F); { Усекаем здесь файл }
WriteLn;
WriteLn('Файл после усечения:');
FileMode := 0; { режим только-чтение }
Reset(F);
while not EOF(F) do
begin
Read(F, I);
WriteLn(I);
end;
Close(F);
Erase(F);
end.