Delphi справочник - Форум программистов - Навигация  
 A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  


Основы Delphi
Truncate
Процедура
Уменьшает размер файла - удаляя все данные после текущей позиции System unit
  procedure Truncate ( var FileHandle : File ) ;
Описание
Процедура Truncate обрезает файла в текущей позиции. Все данные после текущей позиции стираются.

Файл должен быть связан с файловой переменной с помощью функции Assign и открыт с помощью ReWrite или Reset.

Текстовые файлы не поддерживаются.
Похожие команды
Append  Открывает текстовый файл, для добавления записей в файл (добавляет в конец файла)

Erase  Стирает файл

FilePos  

 
Пример кода : Запись в файл, затем его усечение
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
 



© Форум Delphi   |  Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки   |  Английская версия