русс | укр

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

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

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

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


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

Цикл обработки файла


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


Файл

Понятие файла появляется впервые в операционной системе OS/360 фирмы IBM, причем в ранних версиях системы "настоящим файлом" считался только перфокарточный массив (file = картотека), данные на МД и МЛ обозначались как DS (Data Set - набор данных). В последующих ОС (RSX, UNIX, MS-DOS) файлами становятся именованные организованные наборы данных на любых носителях и устройствах, за сохранность и обновляемость которых (а также передачу в прикладные программы / из прикладных программ) несет ответственность ОС ЭВМ.

Файл – это логически непрерывная именованная область данных на внешнем физическом носителе (обычный файл на диске, коммуникационный порт ЭВМ, устройство печати, клавиатура или другие устройства). Во внешних файлах сохраняются результаты работы программы и располагаются данные, служащие источником информации, необходимой для ее функционирования.

Введение файлового типа в язык ПАСКАЛЬ вызвано необходимостью обеспечить возможность работы с периферийными (внешними) устройствами ЭВМ, предназначенными для ввода, вывода и хранения данных. Файловый тип данных или файл определяет упорядоченную совокупность произвольного числа однотипных компонент. Общее свойство массива, множества и записи заключается в том, что количество их компонент определено на этапе написания программы, тогда как количество компонент файла в тексте программы не определяется и может быть произвольным.

В Object Pascal различают три вида файлов в зависимости от способа их организации и доступа к элементам: текстовые, типизированные и нетипизированные.

1. Текстовой файл – это файл, состоящий из строк. Примером текстовогофайла может служить файл исходного текста программы в DELPHI (расширение *.pas). Для работы с текстовым файлом должна быть описана соответствующая файловая переменная: Var F: TextFile;.



2. Типизированные файлы имеют строго заданную их описанием структуру, когда все элементы имеют фиксированный и одинаковый размер. Это свойство типизированных файлов позволяет получить доступ к любому компоненту файла по его порядковому номеру. Элементами такого файла являются, как правило, записи. В описании файловой переменной указывается ее тип: Var F: File of TStudent;.

3. Нетипизированный файл – это файл, в котором данные не имеют определенного типа и рассматриваются как последовательность байт. Файловая переменная объявляется: Var F: File;.

  1. Открытие файла - занятие устройства, на котором файл размещен (например, МД), создание в ОП управляющего блока, в котором записывается справка о состоянии файла, и буфера(или набора буферов - буферного пула) для хранения текущей, обрабатываемой записи файла.

2. Организация цикла, управляемого файлом (заканчивается по исчерпании записей файла - наступлении состояния EOF - end of file). Цикл должен содержать команду ввода, вывода или обновления записи.

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

Порядок работы с файлами следующий:

Type TMyFile = TextFile; //Объявление файлового типаVar f:TMyFile; //Объявление переменнойbeginAssignFile(F, ‘Filename.txt’); // Связывание файловой переменной F // с именем дискового файла “Filename.txt”Rewrite(F); // Создание нового или {Reset(F);) // открытие уже существующего файла . . .Read(F, Stud); // Чтение данных из файла или (Write(F, Stud)) // запись в файл . . .CloseFile(F); // Закрытие файлаEnd;

Для работы с файлами требуется в первую очередь опи­сать переменную, которая будет связана с файлом. Файловый тип или переменную можно задать одним из трех способов:

Type <имя> = { TextFile | file | file of <тип>};Var <идентификатор1>:<имя> <идентификатор2> : { TextFile | file | file of <тип>};

<имя> - имя файлового типа (правильный идентификатор); FILE OF - зарезервированные слова; <тип> - любой тип кроме файлов.

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

ASSIGN (<ф.п.>, <имя файла или л.у.>);

Здесь <ф. п.> - файловая переменная; <имя файла или л. у.> - текстовое выражение, содержащее имя файла или логическое устройство. Если имя файла задается в виде пустой строки, например, ASSIGN(f, ), то в зависимости от направления обмена данными файловая переменная связывается со стандартным файлом INPUT или OUTPUT.

Имена файлов

Имя может содержать до 8 символов, расширение - до трех. Могут использоваться следующие символы:

A - z 0 - 9 ( ) { } @ # $ 1 0% ^ & ! - _ / ' ~

Полное имя файла в MS DOS содержит весь путь по дереву от корневой директории к нужному файлу. Например, C:\ST\LAB\work.pas, где C - имя диска, ST - имя директории на диске, LAB - имя поддиректории директории ST, work.pas - имя программы на Паскале.

Инициализация файла

Инициировать файл - значит указать для него направление передачи данных. В Паскале можно открыть файл для чтения, для записи информации, для чтения и записи одновременно.

Инициализация файла для чтения:

RESET (ф. п.);

Здесь RESET - стандартная процедура Паскаля <ф. п.> - файловая переменная, связанная ранее процедурой ASSIGN с уже существующим файлом или логическим устройством - приемником информации.

Инициализация файла для записи:

REWRITE (ф. п.);

Здесь REWRITE - стандартная процедура Паскаля

Порядок работы с файлами приведен ниже в таблице 7.1

Таблица 7.1 – Работа с файлами

 

Действие text file of ... file
Связывание с переменной assign(f,<имя файла>); assign(f,<имя файла>); assign(f,<имя файла>);
Открытие фай­ла на чтение reset(f); reset(f); reset(f[,<число байт>]);
Открытие фай­ла на запись rewrite(f); rewrite(f); rewrite(f[ ,<число байт>]);
Чтение read(f,...); readln(f,...); read(f,...); blockread(f, ..., <коли­чество> [,<cчитано>]);
Запись write(f,...); writeln(f,...); write(f,...); blockwrite(f, ..., <коли­чество> [,<записано>]);
Закрытие файла close(f); close(f); close(f);

При работе с файлами третьего типа <число байт> указывает, количество байт, считываемых или записываемых в файл за одну операцию. <количество> указывает на размер чтения или записи в байтах. Для определения этого пара­метра можно воспользоваться функцией SizeOf(), в качестве параметра которой задается тип или идентификатор.

При считывании данных из файла можно воспользоваться функцией Eof(), которая показывает, был ли достигнут конец файла.

Для файлов второго и третьего типа возможно проведение записи в файл, открытый с помощью функции Reset(), обеспечивающее модификацию и доза­пись файла.



<== предыдущая лекция | следующая лекция ==>
Изменения в политике вознаграждения сотрудников | Текстовые файлы


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


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

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

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


 


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

 
 

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

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