Статья: Обработка последовательных файлов в программе
Одним из трудных для учащихся и преподавателей разделов программирования является программирование обработки файлов. В Хабаровском межшкольном учебном комбинате №2 накоплен определенный опыт по обучению школьников приемам программирования, в том числе, при работе с файлами. Предлагаем вниманию читателей материал на эту тему, подготовленный В.С. Кузнецовой.
В разделе алгоритмизация и программирование мы работаем в основном с простыми типами данных и только одним из сложных (структурных) типов данных – массивами, при этом опускается работа с файлами данных. Это связано с тем, что в учебном плане мало учебных часов отводится на данный раздел. Несмотря на нехватку времени, желательно в конце раздела рассмотреть тему "Обработка последовательных файлов в программе". Учащиеся уже должны знать, что такое файл. Поэтому занятие необходимо начать с восстановления опорных знаний:
Что такое файл?
Какими способами можно создать файл?
Каким способом вводили данные в программу?
Каким способом выводили данные из программы?
Какие операторы при этом использовали?
К данным, записанным на диске можно обратиться прямым методом доступа или последовательным методом доступа. При последовательном доступе данные должны читаться из файла в том порядке, в каком они были записаны. Прямой доступ к файлу позволяет читать и обновлять записи независимо от их положения в файле, без перебора.
Последовательные файлы следует рассматривать как альтернативу экрана и клавиатуры. Все, что выводилось на экран, в таком виде и по таким же правилам выводится в последовательный файл, а все, что вводилось с клавиатуры, вводится из последовательного файла.
Пусть данные записаны на диске в файле File1.dat. Как к ним обратиться из программы? Для этого необходимо в программе предусмотреть:
Связь имени файла с каналом ввода – вывода и объявить его открытым.
Объявить способ доступа к файлу (последовательный или прямой).
Переслать данные.
Закрыть канал ввода – вывода, связанный с файлом.
Рассмотрим операторы, с помощью которых осуществляется эта работа на языках программирования Бейсик и Паскаль.
На языке программирования Бейсик.
Оператор OPEN "открывает" файл, т.е. делает файл на диске известным программе, связывает имя файла на диске с номером канала ввода – вывода в программе и указывает режим работы с файлом.
Формат:
Open "имя файла" [for режим] as # номер канала [len=размер записи]
Режимы для последовательных файлов:
INPUT - для чтения
OUTPUT - для записи
APPEND - для добавления данных в файл.
Пример:
Open "File1.dat" for input as #1
Оператор PRINT # предназначен для вывода данных в файл.
Формат: PRINT #номер канала, имя переменной
Пример:
Print #1, fam$(i), sum(i)
--> ЧИТАТЬ ПОЛНОСТЬЮ <--