|
|||
Организация ввода и вывода данных с использованием файловОрганизация ввода и вывода данных с использованием файлов
Вопросы:
· Структура текстового файла. · Ввод данных из текстового файла в программу. · Вывод данных из программы в текстовый файл. До сих пор, при написании программ мы использовали ввод данных с клавиатуры и вывод данных на экран. Однако при вводе большого объёма данных с клавиатуры легко допустить ошибку, а данные, отображаемые на экране монитора не всегда легко проанализировать. Ранее мы узнали, что вводом/выводом называется обмен данными между оперативной памятью и любыми внешними устройствами. К этим устройствам относятся и устройства внешней памяти, такие как флэш-накопители, а также оптические, магнитные и гибкие диски. Как мы помним, на устройствах внешней памяти информация хранится в виде файлов. Файлы можно разделить на типизированные, нетипизированные и текстовые. В типизированных и нетипизированных файлах данные хранятся в той же форме, что и в оперативной памяти. То есть при работе с такими файлами данные копируются без изменения объёма. Наиболее часто используются текстовые файлы. Именно в них содержатся исходные коды программ на различных языках программирования, также в них оформляется большая часть документации. Именно в текстовой форме информация передаётся по электронным каналам связи. Именно эти файлы делают возможным ввод данных с клавиатуры и их отображение на экране. При вводе данных из текстового файла в оперативную память компьютера происходит их преобразование из текстовой формы в ту форму, с которой работает оперативная память, то есть в числа. При выводе данных из оперативной памяти в текстовый файл происходит обратное преобразование данных. Рассмотрим структуру текстового файла. Данные в текстовом файле представляют собой последовательность символов, представленных в коде ASCII. Каждый символ в этом коде имеет информационный объём равный одному байту. Переход на следующую строку в текстовом файле обозначается двумя управляющими символами: первым следует символ возврата к началу строки, он обозначается CR, и имеет код 13, после него следует символ перевода строки, который обозначается LF и имеет код 10. Вместе два этих символа образуют двухбайтный признак конца строки. Он обозначается EOLN, сокращённо от английского «End of line», что в переводе на русский язык означает «Конец строки». При отображении данных из файла на экране монитора этот признак обеспечивает разделение данных на строки. В конце текстового файла следует признак EOF, сокращённо от английского «End of file», что в переводе на русский язык означает «Конец файла». Структура текстового файла Теперь рассмотрим, как организовать ввод данных из текстового файла в программе на языке Паскаль. Сперва следует в разделе описания переменных описать файловую переменную, которая будет иметь тип text. var f: text; Объявление файловой переменной Дальнейшие действия выполняются в теле программы. В начале с помощью оператора assign следует назначить описанной файловой переменной, файл. Рассмотрим, как записывается этот оператор. После служебного слова assign, через пробел, в скобках, через запятую указывается имя описанной нами файловой переменной и в кавычках, так как это строковая величина, имя текстового файла, который будет ей соответствовать. Если текстовый файл будет храниться не в одном каталоге с исполняемым файлом программы – нужно указывать также путь к нему. assign (f, ‘input.txt’); Назначение файла файловой переменной После того как мы назначили нашей файловой переменной файл, нужно, используя оператор reset, открыть этот файл для чтения. Для этого с начала записывается служебное слово reset после которого, в скобках, указывается описанная нами файловая переменная. reset (f); Открытие файла для чтения После того как мы открыли файл для чтения нужно считать из него данные с помощью операторов read и readln. При этом в качестве первого параметра этих операторов указывается соответствующая файловая переменная. В конце с помощью оператора close следует закрыть файл. Для этого сначала записывается служебное слово close, после которого в скобках следует имя соответствующей файловой переменной. close (f); Закрытие файла Контрольные вопросы по теме: 1. Сформулируйте правила организации ввода данных из текстового файла 2. Сформулируйте правила организации вывода данных в текстовый файл
|
|||
|