Скачать презентацию Файлы в Паскале лекция 5 Понятие Скачать презентацию Файлы в Паскале лекция 5 Понятие

лк6_2_Файлы в Паскале.ppt

  • Количество слайдов: 18

Файлы в Паскале лекция № 5 Файлы в Паскале лекция № 5

Понятие файла Файл Операционная система Область памяти внешнего запоминающего устройства (обычно диска), имеющая имя. Понятие файла Файл Операционная система Область памяти внешнего запоминающего устройства (обычно диска), имеющая имя. Алгоритмический язык Тип данных, используемый при работе с внешними запоминающими устройствами

Файлы в программировании • Файл - это последовательность однотипных компонент. Число компонент файла не Файлы в программировании • Файл - это последовательность однотипных компонент. Число компонент файла не ограничено. После последней компоненты файла стоит специальный код, называемый признаком конца файла; этот код обычно ставится автоматически, без участия программиста. • В классическом понимании файл рассматривается как абстрактное обобщение данных на устройстве с последовательным доступом, типичным представителем которого является магнитная лента. В библиотеках современных языков программирования, конечно, имеются средства и для работы с файлами прямого доступа.

Классический подход к файлам в программировании 1 2 N-1 … головка считывания/записи Буфер (карман) Классический подход к файлам в программировании 1 2 N-1 … головка считывания/записи Буфер (карман) – память в ОЗУ N Внешнее запоминающее устройство с последовательны м доступом. Движение возможно только от начала, последовательно от компоненты к компоненте. Для достижения N-й компоненты необходимо пройти (N-1) предыдущих компонент.

Программное и физическое имена файлов • Программное имя - это имя переменной файлового типа. Программное и физическое имена файлов • Программное имя - это имя переменной файлового типа. • Физическое имя - это имя устройства или файла на диске. • Существуют специальные операторы, устанавливающие соответствие (связывающие) программное и физическое имена файла.

Текстовые и двоичные файлы • Текстовые файлы хранят информацию во внешнем представлении. Они имеют Текстовые и двоичные файлы • Текстовые файлы хранят информацию во внешнем представлении. Они имеют два основных признака: во-первых, их компонентами являются строки символов; во-вторых, эта символьная информация интерпретируется в соответствии с типом вводимых или выводимых переменных. Эти файлы являются обобщением данных на устройстве CON (т. е. вводимых с клавиатуры или выводимых на экран компьютера). Умение работать с текстовыми файлами необходимо даже начинающим программистам, так как на устройстве CON данные существуют малый промежуток времени, а обычно имеется потребность в их длительном хранении.

Текстовые и двоичные файлы • Двоичный файл - это последовательность байтов; обмен информации между Текстовые и двоичные файлы • Двоичный файл - это последовательность байтов; обмен информации между двоичным файлом и переменными программы происходит без преобразования. В Турбо Паскале рассматривается два вида двоичных файлов: типизированные и нетипизированные. В случае типизированных файлов байты файла разбиваются на ячейки в соответствии с типом компонент файла; например, для файла с базовым типом integer каждая пара байтов (для 32 -разрядных компьютеров – четверка) рассматривается как целое значение; типизированные файлы хранят данные во внутреннем представлении. Для нетипизированных файлов представление информации безразлично, файл рассматривается как последовательность нулей и единиц.

Файлы в Объектном Паскале Файлы в классическом подходе Турбо Паскаля, когда используется переменная типа Файлы в Объектном Паскале Файлы в классическом подходе Турбо Паскаля, когда используется переменная типа файл Текстовые Типизированные Использование цифрового идентификатора (Handle)файла Windows Процедурный подход Нетипизированные двоичные Handle допускает работу только с двоичными файлами! Объектноориентированн ый подход

Классический подход к работе с файлами – основные шаги 1. Объявление файловой переменной – Классический подход к работе с файлами – основные шаги 1. Объявление файловой переменной – программного имени файла – различно для разных видов файлов • Текстовый файл: Var Имя. Файла: textfile; {ТП: text } • Типизированный файл: Var Имя. Файла: file of Базовый. Тип; • Нетипизированный файл: Var Имя. Файла: file;

Классический подход к работе с файлами – основные шаги 2. Связывание программного и физического Классический подход к работе с файлами – основные шаги 2. Связывание программного и физического имен файлов Assign. File (Программное. Имя, Физическое. Имя); {в ТП Assign} Программное. Имя – переменная, описанная как файл; Физическое. Имя – имя файла на диске (полное) или имя устройства. После оператора Assign. File в программе используется только программное имя файла. Пример: Var f: text; … Begin … Assign( f, ‘d: studenta. txt‘ ); {Далее используется только f}

Классический подход к работе с файлами – основные шаги 3. Открытие файла (для чтения Классический подход к работе с файлами – основные шаги 3. Открытие файла (для чтения или для записи) Reset (Имя. Файла); {открытие файла для чтения} Rewrite (Имя. Файла); {открытие файла для записи} Пример: Var f: text; … Begin … Assign( f, ‘d: studenta. txt‘ ); Reset(f); {или для записи Rewrite(f)}…

Классический подход к работе с файлами – основные шаги 4. Чтение из файла или Классический подход к работе с файлами – основные шаги 4. Чтение из файла или запись в файл – различно для разных видов файлов Пока для примера рассмотрим чтение/запись для текстовых файлов: Read (Имя. Файла, Список. Ввода); Write (Имя. Файла, Список. Вывода); Пример: Read(n, a, b); Write(‘s=‘, s); {полная аналогия консольному вводу-выводу} Также можно использовать Readln и Writeln.

Классический подход к работе с файлами – основные шаги Замечание. При работе с файлами Классический подход к работе с файлами – основные шаги Замечание. При работе с файлами используется функция EOF(Имя. Файла). EOF возвращает значение True, если считан признак конца файла, и значение False в противном случае. EOF – сокр. от End Of File

Классический подход к работе с файлами – основные шаги • Закрытие файла Close. File(Имя. Классический подход к работе с файлами – основные шаги • Закрытие файла Close. File(Имя. Файла); {для ТП - Close } Закрытие файла предполагает следующие действия: 1. Сохранение изменений в файле. 2. Перерегистрация файла в каталоге. 3. Разрушение связи между программным и физическим именами файлов. ё

Открытие файла – это подготовка файла к использованию Для чтения Для записи Для дополнения Открытие файла – это подготовка файла к использованию Для чтения Для записи Для дополнения Reset(f) Rewrite(f) Append(f) – только для текстовых файлов

Открытие файла для чтения 1. Поиск файла с заданным физическим именем; если не найден, Открытие файла для чтения 1. Поиск файла с заданным физическим именем; если не найден, то сообщение об ошибке. 2. Указатель файла устанавливается на первую компоненту. 3. Компонента, на которой стоит указатель, считывается в буфер. 4. Если считан признак конца файла, то функция EOF устанавливается в значение True, иначе – в значение False.

Открытие файла для записи 1. Поиск файла с заданным физическим именем; если файл не Открытие файла для записи 1. Поиск файла с заданным физическим именем; если файл не найден, то создается новый файл 2. Содержимое файла очищается. 3. Указатель файла устанавливается на конец файла (последней компоненты). 4. Функция EOF устанавливается в значение True.

Открытие файла для дополнения 1. Поиск файла с заданным физическим именем; если не найден, Открытие файла для дополнения 1. Поиск файла с заданным физическим именем; если не найден, то сообщение об ошибке. 2. Указатель файла устанавливается на конец файла (последней компоненты). 3. Функция EOF устанавливается в значение True.