ВУЗ:
Составители:
Рубрика:
89
программиста. Длина компонент может быть различной. Для открытия нетипизированных
файлов используются процедуры Reset, ReWrite:
Reset(< файловая переменная >, < max размер буфера >);
ReWrite(< файловая переменная >, < max размер буфера >).
Так как за одно обращение к нетипизированному файлу можно считывать не одну
компоненту, а несколько, и так как длины компонент могут быть различны, то в процедурах
Reset и ReWrite указывается максимальный размер буфера ввода-вывода в байтах.
Чтение компонент из файла и запись их в файл выполняется процедурами BlockRead и
BlockWrite:
BlockRead(< файловая переменная >, < буфер >,< кол-во компонент, считываемых за один
раз >, [,< кол-во считанных компонент >]);
BlockWrite(< файловая переменная >,< буфер >,< кол-во записываемых компонент >, [,<
кол-во записанных компонент >]).
Четвертый параметр необязателен. Он формируется системой и используется для проверки
правильности завершения операций чтения или записи.
Нетипизированные файлы рекомендуется использовать для организации эффективной
работы с файлами, так как они позволяют работать, во-первых, с компонентами различной
длины, и, во-вторых, с переменным числом обрабатываемых компонент.
2.7. Процедуры и функции для работы с файлами
Все рассматриваемые функции и процедуры принадлежат стандартному модулю DOS,
поэтому его необходимо подключить к программе с помощью предложения USES.
1. ReName(< файловая переменная >,< новое имя файла >) - переименование файла.
2. Erase(< файловая переменная >) - удаление файла.
3. ChDir(< путь >) - изменение директория, где <путь> - путь к новому директорию.
4. GetDir(< устройство >, < директорий >) - определение текущего каталога, где
<устройство> задается следующим образом:
0 - текущее устройство;
1 - устройство A;
2 - устройство B и т.д.
5. MkDir(< директорий >) - создание нового каталога. В аргументе <директорий>
указывается полный путь до того каталога, который создается.
6. PmDir(< директорий >) - удаление каталога. В качестве аргумента указывается полный
путь до удаляемого каталога. При этом удаляемый каталог должен быть обязательно
пустым.
7. IOResult - проверка правильности завершения работы той или иной операции ввода-
вывода. Эта функция имеет тип WORD и возвращает значение 0, если операция ввода-
вывода выполнилась успешно, и в противном случае следующие значения:
1 - файл не найден,
2 - путь не найден,
3 - слишком много открытых файлов,
5 - запрет доступа к файлу,
12 - некорректный код доступа к файлу
и так далее.
При применении этой функции в программе необходимо с помощью директивы
компилятора отключить стандартную проверку - {$I-}, а после выполнения операций
ввода-вывода включить - {$I+}.
Данная функция записана в стандартном модуле SYSTEM.
8. DiskFree(< устройство >) - определение числа свободных байтов на заданном диске. Эта
функция типа LONGINT.
программиста. Длина компонент может быть различной. Для открытия нетипизированных файлов используются процедуры Reset, ReWrite: Reset(< файловая переменная >, < max размер буфера >); ReWrite(< файловая переменная >, < max размер буфера >). Так как за одно обращение к нетипизированному файлу можно считывать не одну компоненту, а несколько, и так как длины компонент могут быть различны, то в процедурах Reset и ReWrite указывается максимальный размер буфера ввода-вывода в байтах. Чтение компонент из файла и запись их в файл выполняется процедурами BlockRead и BlockWrite: BlockRead(< файловая переменная >, < буфер >,< кол-во компонент, считываемых за один раз >, [,< кол-во считанных компонент >]); BlockWrite(< файловая переменная >,< буфер >,< кол-во записываемых компонент >, [,< кол-во записанных компонент >]). Четвертый параметр необязателен. Он формируется системой и используется для проверки правильности завершения операций чтения или записи. Нетипизированные файлы рекомендуется использовать для организации эффективной работы с файлами, так как они позволяют работать, во-первых, с компонентами различной длины, и, во-вторых, с переменным числом обрабатываемых компонент. 2.7. Процедуры и функции для работы с файлами Все рассматриваемые функции и процедуры принадлежат стандартному модулю DOS, поэтому его необходимо подключить к программе с помощью предложения USES. 1. ReName(< файловая переменная >,< новое имя файла >) - переименование файла. 2. Erase(< файловая переменная >) - удаление файла. 3. ChDir(< путь >) - изменение директория, где <путь> - путь к новому директорию. 4. GetDir(< устройство >, < директорий >) - определение текущего каталога, где <устройство> задается следующим образом: 0 - текущее устройство; 1 - устройство A; 2 - устройство B и т.д. 5. MkDir(< директорий >) - создание нового каталога. В аргументе <директорий> указывается полный путь до того каталога, который создается. 6. PmDir(< директорий >) - удаление каталога. В качестве аргумента указывается полный путь до удаляемого каталога. При этом удаляемый каталог должен быть обязательно пустым. 7. IOResult - проверка правильности завершения работы той или иной операции ввода- вывода. Эта функция имеет тип WORD и возвращает значение 0, если операция ввода- вывода выполнилась успешно, и в противном случае следующие значения: 1 - файл не найден, 2 - путь не найден, 3 - слишком много открытых файлов, 5 - запрет доступа к файлу, 12 - некорректный код доступа к файлу и так далее. При применении этой функции в программе необходимо с помощью директивы компилятора отключить стандартную проверку - {$I-}, а после выполнения операций ввода-вывода включить - {$I+}. Данная функция записана в стандартном модуле SYSTEM. 8. DiskFree(< устройство >) - определение числа свободных байтов на заданном диске. Эта функция типа LONGINT. 89
Страницы
- « первая
- ‹ предыдущая
- …
- 87
- 88
- 89
- 90
- 91
- …
- следующая ›
- последняя »