Разное
Облака / Clouds

The bast cloud service
Get 20 GB free!!!
Support WebDav.
Show more >>

time-tested cloud storage
Support WebDav.
Последние книги
Самое популярное
Все бесплатно
Все ссылки на файлы, расположенные на страницах сайта, добавлены пользователями и доступны для бесплатного скачивания. За содержание этих файлов администрация сайта ответственности не несет.
Навигация
Вопросы

Категория: Файловая система
Delphi - Справочник: FileMode
FileMode
|
var FileMode : Integer; |
Переменная (Unit System)
|
Определяет, как Reset будет открывать двоичный файл
|
Описание:
|
Переменная FileMode определяет режим, в котором процедура Reset открывает типизированный или нетипизированный файл. Процедура Reset открывает нетекстовый файл в том режиме какой указан в FileMode - чтения, записи, или чтения+записи : fmOpenRead = 0 = Только для чтения fmOpenWrite = 1 = Только для записи fmOpenReadWrite = 2 = Чтение и запись (значение по умолчанию) Используйте Seek для перемещения текущей позиции файла. Это полезно для выборочного изменения или для добавления в конец файла. |
Пример кода: Демонстрация всех 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 |
Примечание:
|
Предупреждение: значение по умолчанию Чтение и Запись. Поэтому открытие файла только для чтения (такиз как на CD) потерпело бы неудачу. |