Как найти слово в текстовом файле паскаль
Для участия в олимпиаде по информатике вы должны уметь работать с текстовыми файлами (считывать и записывать информацию). На олимпиадах, начиная с областных, они используются для ввода и вывода данных. Лучше всего попробовать работать с файлами до того, как Вы пойдете на олимпиаду.
На этом уроке мы рассмотрим, как используются текстовые файлы для ввода и вывода данных в программе на языке Паскаль.
Текстовые файлы – это файлы, содержащие символы, разделенные на строки. Причем в конце каждой строки стоит символ конца строки.
Общая последовательность действий при работе с файлами в языке программирования Паскаль:
- описать переменную файлового типа;
- связать ее с конкретным физическим файлом процедурой Assign;
- открыть файл для чтения процедурой ReSet или для записи процедурой ReWrite;
- выполнить чтение или запись информации;
- по окончании работы с файлом закрыть файл процедурой Close.
Описание переменной файлового типа
С текстовым файлом на диске в программе должна быть связана файловая переменная, которая описывается с указанием стандартного типа Text:
Связь переменной файлового типа с конкретным внешним файлом
Для установления связи между файловой переменной и именем файла, присваиваемого операционной системой, имеется стандартная процедура Assign.
Assign (<имя файловой переменной >, <имя внешнего файла>);
Чтение из файла
Под чтением из файла понимается ввод данных из внешнего файла, находящегося на диске, в оперативную память. Данные входного файла становятся доступными программе.
Для чтения файла в программе необходимо выполнить следующие действия:
Открыть файл для чтения:
Reset (<имя файловой переменной >);
Прочитать данные файла в программу с помощью процедуры Read или Readln .
Процедура Read последовательно считывает все элементы строки:
Read(<имя файловой переменной >,<элемент>)
Процедура Readln – считывает элемент из текущей строки и переходит на следующую строку (независимо от того, достигнут конец строки или нет):
Readln(<имя файловой переменной >,<элемент>)
Если не указывать второй параметр, то произойдет переход в начало следующей строки без ввода данных:
Readln (<имя файловой переменной>)
Закрытие файла
После завершения работы с файлом, его нужно закрыть и «освободить» файловую переменную . Это делается с помощью процедуры Сlose.
Общий вид оператора:
Close(<имя файловой переменной >)
Общая форма чтения файла имеет вид:
Reset(<имя файловой переменной >);
Read(<имя файловой переменной >, <элемент>);
Close(<имя файловой переменной >);
Многоточием отмечено наличие других операторов в программе.
Признак конца файла
Так как, по определению, число элементов файла не задается заранее, то в языке Паскаль введена логическая функция Eof() для определения признака конца файла.
Общий вид функции:
Для определения конца файла используется оператор цикла, например, (пока не достигнут конец файла …):
While Not EOF (<имя файловой переменной >) Do …
Запись в файл
Под записью файла понимается вывод результатов программы из оперативной памяти на диск, т.е. создание нового файла на внешнем устройстве.
Для записи файла в программе необходимо выполнить следующие действия:
Открыть файл для записи с помощью процедуры Rewrite:
rewrite (<имя файловой переменной>);
Записать данные в файл спомощью процедур Write или Writeln.
Процедура Write производит запись поэлементно в текущую строку:
Write (<имя файловой переменной >, <элемент>) ;
Процедура WriteLn записывает элемент и переводит указатель в начало следующей строки:
Writeln (<имя файловой переменной >,<элемент>);
Если не указывать второй параметр процедуры, то в конце данной строки ставится признак конца файла и текущий указатель перемещается на начало следующей строки:
WriteLn(<имя файловой переменной >);
После завершения работы с файлом его закрытие обязательно.
Общая форма записи файла имеет вид:
ReWrite(<имя файловой переменной >);
Write(<имя файловой переменной >,<элемент>) ;
Close(<имя файловой переменной >);
Логическая функция Eoln()
Таким образом, для анализа конкретных символов строк файла можно применить вложенный цикл типа:
Пример. Дан текстовый файл, содержащий только целые числа, в каждой строке может быть несколько чисел, которые разделяются пробелами. Вывести на экран все числа с учетом разбиения на строки и подсчитать количество элементов в каждой строке.
Пусть в файле содержится следующая информация:
-32 16 0 8 7
4 5 9 13 11 -5 -8
6 -8 0 12
1 2
-1 -2 -4
-1 -2 4
Этот файл можно создать в среде Паскаль следующим образом:
- Создать новый файл (команда Файл-Новый).
- Записать все числа в строке через пробелы.
- Сохранить его, например, как ‘primer1.dat’.
Для этого в диалоговом окне сохранения файла в списке Тип файла выбрать Все файлы. В поле Имя файла ввести полное имя файла (имя с расширением).
Программа будет иметь следующий вид:
На этом уроке было рассмотрено, как использовать текстовые файлы для ввода и вывода данных в программе на языке Паскаль.
На следующем уроке Вы узнаете, как использовать тип данных Bulean для представления данных логического типа.
Следующий урок: Логический тип данных
Урок понравился? Отзывы и замечания можно оставить в форме для комментариев, расположенной в нижней части страницы.
Читайте также: