Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
95.doc
Скачиваний:
6
Добавлен:
30.04.2022
Размер:
784.9 Кб
Скачать

Подпрограммы для работы с типизированными файлами

Function Read (var F, V1,...,Vn);

Читает данные из типизированного файла F: Vi - переменные такого же типа, что и компоненты файла.

Function Write (var F, V1,...,Vn);

Записывает данные в типизированный файл F: Vi - переменные такого же типа, что и компоненты файла.

Function Seek

(var F; H: Longint);

Смещает указатель файла F к требуемому компоненту: N - номер компонента файла (первый компонент файла имеет номер0).

Function FileSize

(var F): Longint;

Возвращает количество компонентов файла. Чтобы переместить указатель в конец типизированного файла, можно написать: seek (FileVar, FileSize(FileVar));

Function FilePos (var F); Longint;

Возвращает текущую позицию в файле, т.е. номер компонента, который будет обрабатываться следующей операцией ввода-вывода.

TOpenDialog и tSaveDialog

Эти компоненты имеют идентичные свойства и поэтому рассматриваются вместе.

Свойство FileName: String содержит маршрут поиска и выбранный файл при успешном завершении диалога. Программа может использовать это свойство для доступа к файлу с целью читать из него данные (TOpenDialog) или записывать в него (TSaveDialog). Следует отметить, что пользователь может ввести произвольное имя и, следовательно, указать несуществующий файл. Для записи это не имеет значения, но при

чтении отсутствие файла может привести к краху программы. Чтобы избежать этого, можно проверить существование файла глобальной функцией FileExists, или использовать механизм обработки исключительных

34

ситуаций.

Свойство Filter: String используется для фильтрации (отбора) файлов, показываемых в диалоговом окне. Это свойство можно устанавливать с помощью специального редактора или программно. Для доступа к редактору достаточно щелкнуть по кнопке в строке Filter окна Инспектора Объектов. При программном вводе фильтры задаются одной длинной строкой, в которой символы "|" служат для разделения фильтров друг от друга, а также для разделения описания фильтруемых файлов от соответствующей маски выбора. Например, оператор

OpenDialog1.Filter:= 'Текстовые файлы|*.txt|Файлы Паскаля|*.pas';

задает две маски - для отбора файлов с расширениями PAS и ТХТ.

Установить начальный каталог позволяет свойство InitialDir: String. Например:

OpenDialog1.InitialDir := 'с:\program files\borland\delphi 3\source';

С помощью свойства DefaultExt: String[3] формируется полное имя файла, если при ручном вводе пользователь не указал расширение. В этом случае к имени файла прибавляется разделительная точка и содержимое этого свойства.

В диалоговом окне для ручного ввода предусмотрен элемент TEdit, который при желании можно заменить на TComboBox. Для этого необходимо свойству FileEditStyle придать значение fsComboBox вместо умалчиваемого fsEdit. Если выбран комбинированный список, с ним можно связать протокол выбора имен. Для этого используется свойство HistoryList: Tstrings, содержимое которого будет появляться в выпадаю

щем списке. Этот список не пополняется автоматически, поэтому за его содержимым должна следить программа. Например:

if OpenDialogI.Execute then

begin

HistoryList.Add(OpenDialog1, FileName);

..................

end;

Настройка диалога может варьироваться с помощью свойства

TOpenOption = (of Readonly, ofOverwritePrompt,

ofHideReadOnly, ofNoChangeDir, ofShowHelp, ofHoValidate,

ofAllowMultiSelect, ofExtensionDifferent, ofPathMustExist,

ofFileMustExist, ofCreatePrompt, ofShareftware,

ofNoReadOnlyReturn, ofNoTestFileCreate,

ofNoNetworkButton, ofNoLongHames, ofOldStyleDiaiog,

ofNoDereferenceLinks);

TOpenOptions = set of TOpenOption;

property Options: TOpenOptions;

Значения этого свойства имеют следующий смысл:

ofReadOnly

Устанавливает переключатель Только для чтения.

ofOverwritePrompt

Требует согласия пользователя при записи в существующий файл.

35

ofHideReadOnly

Прячет переключатель Только для чтения.

ofNoChangeDir

Запрещает смену каталога.

ofShowHelp

Включает в окно кнопку Help.

ofNoValidate

Запрещает автоматическую проверку правильности набираемых в имени файла символов.

ofAliowMultiSelect

Разрешает множественный выбор файлов.

ofExtensionDifferent

При завершении диалога наличие этого значения в свойстве Options говорит о том, что пользователь ввел расширение, отличающееся от умалчиваемого.

ofPathMustExist

Разрешает указывать файлы только из существующих каталогов.

ofFileMustExist

Разрешает указывать только существующие файлы.

ofCreatePrompt

Требует подтверждения для создания несуществующего файла.

ofShareAware

Разрешает выбирать файлы, используемые другими параллельно выполняемыми программами.

ofNoReadOnlyReturn

Запрещает выбор файлов, имеющих атрибут Только для чтения.

ofNoTestFileCreate

Запрещает проверку доступности сетевого или локального диска.

ofNoNetworkButton

Запрещает вставку кнопки для создания сетевого диска.

ofNoLongHames

Запрещает использование длинных имен файлов.

ofOldStyleDialog

Создает диалог в стиле Windows 3.х.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]