Файлы. Элементы файлов

Содержание

Слайд 2

Вникнем – что такое файлы?

В Паскале существует множество различных типов данных.
Они делятся

Вникнем – что такое файлы? В Паскале существует множество различных типов данных.
на простые (состоящие из одно данного) и на сложные (состоящие из набора данных) типы.

Слайд 3

До сегодняшнего дня ты все время при запуске программы вводил по новому

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

Слайд 4

Но теперь у тебя появился новый друг и спутник жизни – Файлы.
Как

Но теперь у тебя появился новый друг и спутник жизни – Файлы.
ты наверное уже догадался с помощью файлов ты сможешь:
Использовать сохраненные данные даже после взрыва вселенной
Передавать данные из одной программы в другую прямо как wifi в макдональдсе передает сообщения вк в твой телефон

Слайд 5

Стоп! На этом слайде надо задержаться :)

Файл – это упорядоченный поименованный набор

Стоп! На этом слайде надо задержаться :) Файл – это упорядоченный поименованный
элементов одного типа на внешнем носителе.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Определение выше я советую прочитать еще раз, осмыслить и вызубрить потому что у тебя всю жизнь будут спрашивать его
Будут будить по ночам и спрашивать
Не ответишь - расстрел
(из личного опыта)

Слайд 6

Теперь немного о элементах файла

Прежде всего элемент файла в программе это переменная

Теперь немного о элементах файла Прежде всего элемент файла в программе это
определенного типа
И как любая переменная она должна быть объявлена
Иначе последствия будут катастрофическими
Будет ошибочка и насмешки друзей над отличной программой неспособной скомпилироваться :)

Слайд 7

Как происходит получение файла в программе

Постарайся уловить мысль в этой под теме

Как происходит получение файла в программе Постарайся уловить мысль в этой под
поскольку это очень важно
Программа не загружает сразу полностью файл
Она загружает его поэлементно
Начинает она разумеется с первого элемента и идет по порядку до последнего
На том элементе который сейчас программа будет считывать стоит так называемое окошко (понять что такое окошко и как оно переключается безумно важно так что вникай)
Есть специальные операторы которые сообщают программе что пора считать новый элемент с того места где стоит окошко (о них позже)
И после применения таких операторов программа переводит окошко на следующий элемент

Слайд 8

Все элементы из файла считываются в переменную
Самую обычную переменную, только важно чтобы

Все элементы из файла считываются в переменную Самую обычную переменную, только важно
ее тип соответствовал типу элементов файла

Слайд 9

Объявление файлов

Для того чтобы программа смогла использовать файл надо объявить его и

Объявление файлов Для того чтобы программа смогла использовать файл надо объявить его
привязать то имя к имени файла на диске
Давайте разберемся с объявлением файла (сразу после этого с привязкой)
При объявлении файла на сообщить программе какого типа у нас файл
Есть несколько способов это сделать:
Тыкнуть носом паскаль в тип Тогда файл будет считаться типизированным
Послать паскаль самому определять тип файла (фигово работает с записями) Тогда файл будет считаться нетипизированным
Намекнуть что файл текстовый Тогда файл будет считаться текстовым
Мне больше нравится первый вариант
Так я точно уверен что паскаль не будет меня подкалывать)

Слайд 10

Давай объявим разные типы файлов
Типизированные файлы
var f:file of integer;
f – это

Давай объявим разные типы файлов Типизированные файлы var f:file of integer; f
имя файла в програме, ну и ты видишь что здесь у нас файл будет типа integer
Вместо integer можно написать любой другой тип кроме файлового (можешь даже свой тип там указывать)
Нетипизированные файлы
var f:file;
Текстовые файлы
var f:text;

Слайд 11

Привязка, открытие, закрытие

Теперь как я и обещал привязка имя файла на диске

Привязка, открытие, закрытие Теперь как я и обещал привязка имя файла на
к имени файла в программе
Это сделать очень легко
assing(f, ‘file.txt’); где f – ранее объявленное нами имя файла, а file.txt его название на диске
Теперь чтобы считать информацию из файла его нужно открыть
В паскале есть два режима открытия файла:
Для ввода – файл полностью обнуляется
rewrite(f); где f – ранее объявленное нами имя файла
Для чтения – файл не обнуляется, но ты можешь заменить любой элемент в файле (об этом далее)
reset(f); где f – ранее объявленное нами имя файла
Так же всегда после работы с файлами их необходимо закрывать чтобы не засорять память может вылететь ошибка
close(f); где f – угадай что

Слайд 12

Ну конечно же между открытием и закрытием файла должны быть чтение и

Ну конечно же между открытием и закрытием файла должны быть чтение и
запись!
Кстати, сейчас надо вспомнить про то самое окошко о котором я рассказывал)
Чтение элемента файла:
read(f,info); где f – мы уже выучили, info –переменная в которую присваивается элемент файла
оператор работает только если мы открываем файл длч чтения
Запись элемента файла:
write(f,info); где f - … , а info – то что мы хотим записать в файл
оператор работает как в режиме чтения, так и в режиме записи
И не забывайте! Использовали мы один из этих операторов и окошко само переключилось на следующий элемент файла. 70% студентов забывают об этом по началу

Считывание и запись в файл

Слайд 13

Как пройтись по файлу?

Как ты уже запомнил мы идем поэлементно по файлу
И

Как пройтись по файлу? Как ты уже запомнил мы идем поэлементно по
раз надо пройтись поэлементно значит нужен цикл
Но как выйти из цикла как только файл закончится?
Для этого существует eof(f) ну это просто дебилизм будет писать что такое f :)
Чтобы активировать это фигню надо написать в самом начале программы checkeof:=true;
Пока файл не закончится eof(f) будет возращать false
Как только закончится вернет true
Вот пример цикла прохода по файлу
while not(eof(f)) do begin
read(f,info);
end;

Слайд 14

Стандартные файлы в Паскале

А ты знаешь что почти во всех своих программах

Стандартные файлы в Паскале А ты знаешь что почти во всех своих
ты уже работал с файлами?)
Есть так называемые стандартные файлы в паскале
Они служат для ввода/вывода информации
Ведь не случайно read(info) и read(f,info), write(info) и write(f,info) похожи по написанию
Считывая переменую info программа по умолчанию устанвавливает работу с файлом ввода/вывода (при условии если ты сам не указал файл с которым работать)
А если все что мы набираем на клавиатуре считается выходными данными из файл значит можно и определить конец выходного потока
checkeof:=true;
while not(eof) do begin
read(info);
end;
И пока мы не нажмем Esc мы будем снова и снова вводить переменную info

Слайд 15

Теперь сделай перерыв
Отдохни, подумай, перевари прочитанное
Если что не понятно спроси у преподавателя
или

Теперь сделай перерыв Отдохни, подумай, перевари прочитанное Если что не понятно спроси
еще раз перечитай предыдущие слайды

Слайд 16

А теперь к практике

Запись в файл

А теперь к практике Запись в файл

Слайд 17

А теперь к практике

Считывание из файла

А теперь к практике Считывание из файла
Имя файла: Файлы.-Элементы-файлов.pptx
Количество просмотров: 32
Количество скачиваний: 0