Remkomplekty.ru

IT Новости из мира ПК
2 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как открыть паскаль

Файлы в Паскаль.

Типы данных, которые мы рассматривали в прошлых уроках, обладают одним существенным недостатком. Они не приспособлены для долговременного хранения информации. Возьмем, например, такой тип как Запись. Мы можем внести в программу множество различных данных (с клавиатуры в процессе выполнения программы), однако, после закрытия программы все эти данные исчезнут. При повторном запуске программы нам по новой придется вводить информацию о цвете автомобиля, его марке, пробеге, дате выпуска и т.д. А если нам необходимо ввести информацию о нескольких сотнях автомобилях? Не будем же мы каждый раз при новом запуске программы вводить всю информацию по-новому. Конечно же, не будем. Для долговременного хранения информации на компьютере в языке программирования Pascal используют файловый тип.

Файлом называют область во внешней памяти компьютера, которая обладает определенными признаками:

  • файл имеет имя
  • размер файла ограничен лишь емкостью устройства внешней памяти
  • файл содержит компоненты одного типа.

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

Открытие текстового файла для чтения.

Для того чтобы открыть текстовый файл, его сначала нужно создать. Поэтому в директории C:FPC2.2.2bini386-win32Programs создаем файл с названием «text» и расширением «txt». В этом файле записываем какое-нибудь слово, например, «pascal».

Далее набираем программу.

Строка №3. Записываем переменную «fl» и указываем для нее тип Text. Text — стандартный текстовый тип файла. Переменные этого типа используются для хранения текстовой информации. Переменная «fl» называется файловой переменной и служит для связи программы с текстовым файлом. На этом этапе главное запомнить, что любые файловые переменные, предназначенные для работы с текстовыми файлами, должны иметь тип данных Text.

Строка №4. Записываем переменную «str» и указываем для нее тип данных String. Эту переменную мы будем использовать для чтения строк из файла.

Строка №7. Для того чтобы текстовый файл (text.txt, созданный нами ранее) стал доступен программе, его необходимо связать с файловой переменной («fl»). Это осуществляется с помощью стандартной процедуры Assign. Записываем процедуру Assign, затем в круглых скобках указываем переменную, и через запятую в апострофах указываем путь к нашему файлу «text.txt». Теперь посредством файловой переменной «fl» мы можем управлять файлом «text.txt».

Строка №8. Здесь происходит инициация файла. Инициация файла – это открытие файла для чтения, записи либо для чтения и записи одновременно. Процедура Reset говорит нам о том, что файл открывается только для чтения. В скобках после слова Reset указывается файловая переменная «fl». Т.к. эту переменную мы связали с текстовым файлом «text.txt», то в результате процедуры Reset этот текстовый файл будет открыт для чтения.

Строка №9. Для того чтобы получить доступ к записям, хранящимся в файле, используются процедуры Read, Readln, Write, Writeln. В нашем примере для чтения записи из файла используется процедура Read. Записываем процедуру Read, далее в скобках указываем название файловой переменной и через запятую название строковой переменной. В результате действия процедуры Read из файловой переменной «fl» (как вы помните, в этой переменной хранится текстовая информация из файла «text.txt», т.е. слово «pascal») будет прочитана информация (слово «pascal») и эта информация будет записана в строковую переменную «str».

Строка №10. Выведем на экран значение строковой переменной «str». Т.е. на экран выведется слово «pascal».

Строка №11. Стандартная процедура закрытия файла, указанного в скобках после слова Close.

Дополнение к материалу.

1. Правила для составления имен файлов.

  • Имя файла содержит не более 8 символов.
  • Символы могут содержать прописные и строчные буквы латинского алфавита, цифры, а также символы «!», «@», «#», «$», «%», «^», «&», «()», «’», «-», «;»
  • Имя файла может начинаться с любого из вышеперечисленных символов, цифры, строчной или прописной буквы латинского алфавита.
  • За именем файла может следовать расширение, которое отделяется от имени точкой и может содержать не более 3-х символов.

2. В нашем примере мы поместили текстовый файл в папке «programs». Вообще файл можно разместить в любом месте на компьютере, но тогда необходимо указывать полный путь к этому файлу в строке №7.

Файлы в Паскале. Общие сведения. Текстовые файлы

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

Читать еще:  Заполнение матрицы паскаль

Файлы принято разделять на физические и логические. Физические файлы имеют имя, и располагаются на съемном носителе, а логические это те переменные файлового типа, которые их представляют в программе.

В Паскале различают следующие три вида файлов (в скобках описаны ключевые слова для инициализации файловой переменной):

текстовые файлы (text);

типизированные (file of );

Немного позже мы разберемся с каждым из них. А сейчас рассмотрим основные операции для работы с файлами.

Создание файла

Процедура Assign связывает переменную файлового типа с физическим файлом. Например, установить соответствие между переменной Fil и текстовым файлом lot, расположенном на диске D, можно так:

Режим чтения

Процедура Reset открывает файл в режиме чтения, после чего оператором Read( , ) можно осуществить последовательное считывание элементов в программу.

Конец файла

Количество элементов в файле заранее не определяется, но часто необходимо знать о моменте достижения конца файла. Для этого в Паскале существует логическая функция EOF, которая проверяет достигнут ли конец, и если это так, то принимает значение True, иначе – False. Осуществляется проверка, как правило, в цикле, в качестве условного выражения выступает функция EOF.

Режим записи

Открыв файл в режиме записи, можно поэлементно записать в него информацию, воспользовавшись процедурой Write( , ).

Закрытие файла

Процедура Close закрывает открытый файл, а также освобождает файловую переменную, указанную в качестве параметра.

Удаление файла

При помощи процедуры Erase, можно удалить с внешнего носителя, заранее закрытый файл.

Изменение имени файла

Rеnаmе переименовывает физический файл, который перед этим следует закрыть процедурой Close.

Смещение указателя файла

Процедура Sееk устанавливает позицию указателя в файле на необходимый элемент (нумерация элементов начинается с нуля).

Определение положения указателя

Функция FilePos принимает значение порядкового номера элемента, над которым в момент вызова находиться указатель.

Определение количества элементов

Функция FileSize определяет количество всех имеющихся в файле элементов.

Текстовые файлы

Текстовые файлы могут состоять из элементов символьного (char) и строкового (string) типа данных. Ключевое слово Text указывает, что файловая переменная создается для работы именно с текстовым файлом:

Структура текстового файла представляет собой последовательность строк, которые в свою очередь состоят из символов. Любая строка оканчивается признаком «конца строки», а сам файл признаком «конца файла». Для определения конца файла в Паскаль есть функция EOF, а для конца строки – EOLn:

В случае достижения конца строки она (функция EOLn) принимает значение True, в противном случае False.

Рассмотрим работу с текстовым файлом, на примере программы.

Место создания файла «file.txt» не было указано, поэтому он создаться в папке по умолчанию для вашей среды программирования.

Для текстовых файлов в Паскале определены следующие процедуры и функции:

Процедура Append открывает существующий файл в режиме дозаписи. После чего в его конец можно добавить какую либо информацию.

Если до конца строки остались пробелы/знаки табуляции, то функция SeekEOLn возвращает значение True, иначе False.

Если до конца файла остались лишь строки с пробелами/знаками табуляции, то функция SeekEOF возвращает значение True, иначе False.

лабы по информатике, егэ

лабораторные работы и задачи по программированию и информатике, егэ по информатике

Pascal: Занятие № 12 Часть1. Работа с файлами в паскале (текстовые файлы)

Работа с файлами в паскале

Виды файлов в зависимости от их описания и режимом работы

  1. текстовые (тип text) файлы со строками неопределенной длины;
  2. файлы с типом записей (двоичные или типизированные (file of) );
  3. файлы без типа для передачи данных блоками записей нетипизированные (file).

Описание файловых переменных:

Для связи файла в коде программы и действительного файла на внешнем носителе используется процедура ASSIGN :

где myfile — имя переменной (объявленной ранее в области var ), ассоциированной с файлом
c:text.txt — путь к реальному файлу
Первый аргумент процедуры assign в паскаль — переменная, второй – путь к файлу на диске.

Текстовые файлы в паскале: процедуры работы

Текстовый файл в Паскале — это совокупность строк произвольной длины, которые разделены между собой метками конца строки, а весь файл заканчивается меткой конца файла.

Возможные расширения файлов:
*.txt, *.log,
*.htm, *.html

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

Читать еще:  Язык си do while

Предусмотрены два режима работы: режим для записи в файл информации и для чтения ее из файла. Одновременная запись и чтение запрещены.

Открытие файла

Допустим, мы в программе описали переменную для работы с текстовым файлом:

Рассмотрим дальнейшую последовательность работы с ним, и рассмотрим процедуры, необходимые для работы с текстовым файлом в Паскале:

процедура открытия существующего файла для чтения при последовательном доступе:

процедура открытия создаваемого файла для записи в него информации; если файл с таким именем уже существует, то информация в нем стирается:

Урок 4. Работа с текстовыми файлами

Урок из серии: «Язык программирования Паскаль»

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

На этом уроке мы рассмотрим, как используются текстовые файлы для ввода и вывода данных в программе на языке Паскаль.

Текстовые файлы – это файлы, содержащие символы, разделенные на строки. Причем в конце каждой строки стоит символ конца строки.

Общая последовательность действий при работе с файлами в языке программирования Паскаль:

  1. описать переменную файлового типа;
  2. связать ее с конкретным физическим файлом процедурой Assign;
  3. открыть файл для чтения процедурой ReSet или для записи процедурой ReWrite;
  4. выполнить чтение или запись информации;
  5. по окончании работы с файлом закрыть файл процедурой Close.

Описание переменной файлового типа

С текстовым файлом на диске в программе должна быть связана файловая переменная, которая описывается с указанием стандартного типа Text:

Связь переменной файлового типа с конкретным внешним файлом

Для установления связи между файловой переменной и именем файла, присваиваемого операционной системой, имеется стандартная процедура Assign.

Такое соответствие обозначает, что все операции, выполняемые над переменной F1, будут выполняться над файлом, хранящемся на диске и имеющим имя ‘Int.dat’

Чтение из файла

Под чтением из файла понимается ввод данных из внешнего файла, находящегося на диске, в оперативную память. Данные входного файла становятся доступными программе.

Для чтения файла в программе необходимо выполнить следующие действия:

Открыть файл для чтения:

Прочитать данные файла в программу с помощью процедуры Read или Readln .

Процедура Read последовательно считывает все элементы строки:

Процедура Readln – считывает элемент из текущей строки и переходит на следующую строку (независимо от того, достигнут конец строки или нет):

Если не указывать второй параметр, то произойдет переход в начало следующей строки без ввода данных:

Закрытие файла

После завершения работы с файлом, его нужно закрыть и «освободить» файловую переменную . Это делается с помощью процедуры Сlose.

Общий вид оператора:

Общая форма чтения файла имеет вид:

Многоточием отмечено наличие других операторов в программе.

Признак конца файла

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

Общий вид функции:

Она определяет, достигнут ли конец файла или еще нет (принимает значение (true), если достигнут конец файла, и ложь (false) — в противном случае).

Для определения конца файла используется оператор цикла, например, (пока не достигнут конец файла …):

While Not EOF ( ) Do …

Запись в файл

Под записью файла понимается вывод результатов программы из оперативной памяти на диск, т.е. создание нового файла на внешнем устройстве.

Для записи файла в программе необходимо выполнить следующие действия:

Открыть файл для записи с помощью процедуры Rewrite:

Записать данные в файл спомощью процедур Write или Writeln.

Процедура Write производит запись поэлементно в текущую строку:

Процедура WriteLn записывает элемент и переводит указатель в начало следующей строки:

Если не указывать второй параметр процедуры, то в конце данной строки ставится признак конца файла и текущий указатель перемещается на начало следующей строки:

После завершения работы с файлом его закрытие обязательно.

Общая форма записи файла имеет вид:

Логическая функция Eoln()

Часто для обработки текстовых файлов используется специфичная для них функция Eoln(), позволяющая определить, достигнут ли конец строки. Если достигнут — значение функции равно True, а если нет — False.

Читать еще:  Вижуал студио си шарп

Таким образом, для анализа конкретных символов строк файла можно применить вложенный цикл типа:

Пример. Дан текстовый файл, содержащий только целые числа, в каждой строке может быть несколько чисел, которые разделяются пробелами. Вывести на экран все числа с учетом разбиения на строки и подсчитать количество элементов в каждой строке.

Пусть в файле содержится следующая информация:

-32 16 0 8 7
4 5 9 13 11 -5 -8
6 -8 0 12
1 2
-1 -2 -4
-1 -2 4

Этот файл можно создать в среде Паскаль следующим образом:

  1. Создать новый файл (команда Файл-Новый).
  2. Записать все числа в строке через пробелы.
  3. Сохранить его, например, как ‘primer1.dat’.
    Для этого в диалоговом окне сохранения файла в списке Тип файла выбрать Все файлы. В поле Имя файла ввести полное имя файла (имя с расширением).

Программа будет иметь следующий вид:

На этом уроке было рассмотрено, как использовать текстовые файлы для ввода и вывода данных в программе на языке Паскаль.
На следующем уроке Вы узнаете, как использовать тип данных Bulean для представления данных логического типа.
Следующий урок: Логический тип данных

Урок понравился? Отзывы и замечания можно оставить в форме для комментариев, расположенной в нижней части страницы.

Файлы в Pascal. Понятия файла и файловой переменной. Внешние файлы

Файлы в Pascal.

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

Файл – совокупность данных, записанная во внешней памяти под определенным именем.
Файловый тип переменной – структурированный тип, представляет собой совокупность однотипных элементов, количество которых заранее не определено.

Турбо Паскаль поддерживает три файловых типа:

  1. типизированные файлы – файлы, состоящие из компонентов одного типа, число которых заранее не определено;
  2. безтиповые файлы – файлы, где информация записывается и считывается блоками определенного размера, в них могут храниться данные любого вида и структуры;
  3. текстовые файлы – файлы, состоящие из любых символов. Они организуются по строкам, каждая из которых заканчивается символом «конец строки». В конце файла ставиться символ «конец файла». Информацию текстового файла можно просмотреть с помощью любого текстового редактора.

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

  1. как поименованная область данных на внешнем носители (внешний файл)
  2. как переменная файлового типа (внутренний файл)

В программе между этими объектами устанавливают связь и все, что в процессе выполнения программы происходит с внутр. файлом, дублируется во внешний. Над элементами файла можно делать только 2 операции: читать с файла, записывать в файл.

Обработка типизированных файлов.

Переменную файлового типа описывают одним из двух способов:
Тип может быть любым, кроме файлового.

Стандартные процедуры и функции

— связывает файловую переменную f с физическим файлом, полное имя которого задано в строке x. Установленная связь будет действовать до конца работы программы, или до тех пор, пока не будет сделано переназначение.

После связи файловой переменной с дисковым именем файла нужно открыть файл.

открывает для чтения файл, с которым связана файловая переменная f. После успешного выполнения процедуры Reset файл готов к чтению из него первого элемента.
Если f — типизированный файл, то процедурой reset он открывается для чтения и записи одновременно.

открывает для записи файл и очищает его.

закрывает открытый до этого файл с файловой переменной f. EOF(f) возвращает значение TRUE, когда при чтении достигнут конец файла.

позволяет переименовать физический файл на диске, связанный с файловой переменной f. Переименование возможно после закрытия файла.

уничтожает физический файл на диске, который был связан с файловой переменной f. Файл к моменту вызова процедуры Erase должен быть закрыт.

Чтение из текстового файла

Процедуры читают информацию из файла f в переменные. Способ чтения зависит от типа переменных, стоящих в списке. Отличие ReadLn от Read в том, что в нем после прочтения данных пропускаются все оставшиеся символы в данной строке, включая метку конца строки. Если список переменных отсутствует, то процедура ReadLn(f) пропускает строку при чтении текстового файла.

Запись в текстовый файл

Процедуры записывают информацию в текстовый файл. WriteLn от Write отличается тем, что после записи всех значений из переменных записывает еще и метку конца строки (формируется законченная строка файла).

Ссылка на основную публикацию
Adblock
detector