Справочник функций и процедур Delphi: FileMode

  Навигация по первой букве:

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

  Навигация по категории:

Compiler directives, Directives, Keywords / Types, Variables, Constants / Functions, Procedures

FileMode
Переменная
Определяет, как Reset будет открывать двоичный файл System unit
  var FileMode : Integer;


Описание
Переменная FileMode определяет режим, в котором процедура Reset открывает типизированный или нетипизированный файл.

Процедура Reset открывает нетекстовый файл в том режиме какой указан в FileMode - чтения, записи, или чтения+записи :

fmOpenRead = 0 = Только для чтения
fmOpenWrite = 1 = Только для записи
fmOpenReadWrite = 2 = Чтение и запись (значение по умолчанию)

Используйте Seek для перемещения текущей позиции файла. Это полезно для выборочного изменения или для добавления в конец файла.
Примечания
Предупреждение: значение по умолчанию Чтение и Запись. Поэтому открытие файла только для чтения (такиз как на CD) потерпело бы неудачу.
Похожие команды
AssignFile  Связывает дескриптор файла с бинарным или текстовым файлом

Reset  Открывает текстовый файл для чтения, или двоичный файл для чтения/записи

 
Пример кода : Демонстрация всех 3-х режимов доступа к файлам
var
  myWord, myWord1, myWord2, myWord3 : Word;
  myFile : File of Word;

begin
  // Попытка открыть бинарный файл Test.cus в режиме только для записи
  AssignFile(myFile, 'Test.cus');
  FileMode := fmOpenWrite;
  ReSet(myFile);

  // Запись нескольких строк Word данных в файл
  myWord1 := 123;
  myWord2 := 456;
  myWord3 := 789;
  Write(myFile, myWord1, myWord2, myWord3);

  // Закрытие файла
  CloseFile(myFile);

  // Повторное открытие файла в режиме только для чтения
  FileMode := fmOpenRead;
  Reset(myFile);

  // Показ содержимого файла
  ShowMessage('Содержимое файла в начале');
  while not Eof(myFile) do
  begin
    Read(myFile, myWord);
    ShowMessage(IntToStr(myWord));
  end;

  // Повторное закрытие файла
  CloseFile(myFile);

  // Повторное открытие файла в режиме чтение/запись
  FileMode := fmOpenReadWrite;
  Reset(myFile);

  // Чтение одного Word данного, затем запись поверх следующего
  Read(myFile, myWord);
  myWord := 9876;
  Write(myFile, myWord);

  // Закрытие файла
  CloseFile(myFile);

  // Повторное открытие файла в режиме только для чтения
  FileMode := fmOpenRead;
  Reset(myFile);

  // Показ содержимого файла
  ShowMessage('Обновлённое содержимое файла');
  while not Eof(myFile) do
  begin
    Read(myFile, myWord);
    ShowMessage(IntToStr(myWord));
  end;

  // Close the file for the last time
  CloseFile(myFile);
end;

Содержимое файла в начале
123
456
789
Обновлённое содержимое файла
123
9876
789
 


Последние добавленные на сайт исходники

TDictionary Custom Sort

Fast Watermark Sources

3D Designer

Sik Screen Capture

Patch Maker

Айболит (remote control)

 

ListBox Drag & Drop

Доска для игры Реверси

Графические эффекты

Рисование по маске

Перетаскивание изображений

Canvas Drawing

 

Copyright © 2004-2022 "Delphi Sources" by BrokenByte Software (источник – "DelphiBasics")

Группа ВКонтакте   Facebook   Ссылка на Twitter   Ссылка на Telegram