русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Работа с файлами


Дата добавления: 2013-12-23; просмотров: 793; Нарушение авторских прав


Объявление файловой переменной задает только тип компонентов файла. Файлы становятся доступны программе только после особой процедуры открытия файла. Эта процедура заключается в связывании ранее объявленной файловой переменной с именем существующего или вновь создаваемого файла, а также в указании направления обмена информацией: чтение из файла или запись в него.

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

Описание процедуры AssignFile выглядит следующим образом:

AssignFile (<переменная_файлового_типа>,<имя_файла>);

Имя файла задается согласно принятым в Windows правилам. Оно может быть полным, т. е. состоять не только непосредственно из имени файла, но и включать путь к файлу (имя диска, каталогов и подкаталогов).

Ниже приведены примеры вызова процедуры AssignFile:

AssignFile (f, 'a:\result.txt');AssignFile (f, '\students\ivanov\korni.txt'); fname:='otchet.txt'; AssignFile (f,fname); Следующим обязательным действием при работе с файлами является инициализация файла (определение направления передачи данных). В Delphi можно открыть файл для чтения, для записи, для чтения и записи информации.

Reset (F); // F – файловая переменная, связанная с уже существующим файлов

Reset (F; RecSize);При выполнении этой процедуры файл подготавливается к чтению информации. В результате специальная переменная-указатель, связанная с этим файлом, будет указывать на начало файла, т.е. на компонент с порядковым номером 0.При вызове процедуры Reset возможны две ситуации, когда возникают ошибки выполнения программы, которые приводят к возникновению исключительной ситуации:1) Если делается попытка инициировать чтение из несуществующего файла. Чтобы проверить, существует ли файл, можно использовать стандартную функцию FileExists, которая возвращает True, если указанный при обращении к этой функции файл существует, и False – если не существует.begin If FileExists (FileName) then … // файл существуетelse … // файл не существуетend;2) Статус файла не соответствует режиму открытия (например, файл с атрибутом «только для чтения» нельзя открыть для записи). Чтобы избежать аварийного завершения программы, можно воспользоваться директивой компилятора {$I-}, которая отключает автоматический контроль ошибок ввода-вывода. В таком случае результат последней операции ввода-вывода возвращается стандартной функцией IOResult.При работе с нетипизированными файлами процедура Reset имеет дополнительный параметр RecSize типа Word, который определяет размер блока данных. Если размер блока данных не указывается, то он принимается равной 128 байт.

ReWrite (F);



ReWrite (F; RecSize);

При выполнении этой процедуры файл инициируется для записи информации. Однако данной процедурой нельзя инициировать запись информации в ранее существовавший дисковый файл: при выполнении этой процедуры старый файл (если он был) уничтожается и никаких сообщений об этом в программу не передается. Новый файл подготавливается к приему информации и его указатель принимает значение 0. Иными словами, создается новый файл.При работе с нетипизированными файлами процедура ReWrite имеет дополнительный параметр RecSize типа Word, который определяет размер данных.

Append (F);

Эта процедура инициирует запись в ранее существовавший текстовый файл для его расширения, при этом указатель файла устанавливается в его конец. Процедура Append применима только к текстовым файлам, т.е. их файловая переменная должна иметь тип TextFile. Процедурой Append нельзя инициировать запись в типизированный или нетипизированный файл. Если текстовый файл ранее уже был открыт с помощью процедуры Reset или ReWrite, использование процедуры Append приведет к закрытию этого файла и открытию его вновь, но уже для добавления записей.

EOF (F);

Данная функция тестирует конец файла и возвращает True, если файловый указатель стоит в конце файла. При записи это означает, что очередной компонент будет добавлен в конец файла, при чтении – что файл исчерпан. Значение функции EOF равно False, если прочитанный элемент данных не является последним в файле, т. е. возможно дальнейшее чтение.

Значение функции EOF можно проверить сразу после открытия файла. Если при этом оно окажется равным True, то это значит, что файл не содержит ни одного элемента данных, т. е. является пустым (размер такого файла равен нулю).

CloseFile (F); – процедура закрытия файл.

Rename (F, NewName); – процедура переименования файла, NewName – строковое выражение, содержащее новое имя файла. Перед выполнением процедуры необходимо закрыть файл.



<== предыдущая лекция | следующая лекция ==>
Объявление файла | Вывод в файл


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.694 сек.