Презентация по слайдам:
Слайд #1
Файлы
Слайд #2
- именованная область внешней памяти ЭВМ, хранящая совокупность данных. Файл
Слайд #3
Файл имеет имя (до 8 лат. букв, цифр или символов !, @, #, $, %, ^, &, (, ), `, ~, -, _ и после точки – расширение до 3 символов. Перед именем можно указать путь к файлу) Файл содержит компоненты одного типа Длина создаваемого файла не оговаривается при его объявлении, а ограничивается только ёмкостью устройств внешней памяти ЭВМ Особенности файлов
Слайд #4
Файл можно представить как потенциально бесконечный список значений одного типа. В любой момент времени программе доступен только один элемент файла, на который ссылается текущий указатель. Текущий указатель элемент1 элемент2 элемент3 …
Слайд #5
Файлы последовательного доступа (к элементам обеспечивается доступ в той же последовательности, в которой они записывались) Файлы прямого доступа (доступ к элементам осуществляется по адресу элемента) По способу доступа к элементам различают
Слайд #6
Типы файлов (файловых переменных) Обмен данными с файлом осуществляется с помощью переменных файлового типа. Текстовые Типизированные Нетипизированные
Слайд #7
Формат описания файлов var : text ; {текстовый файл} var : file of ; {типизированный файл} var : file ; {нетипизированный файл}
Слайд #8
Примеры var f1 : text; f2 : file of integer; f3 : file;
Слайд #9
Процедуры и функции для работы с файлами
Слайд #10
1. Процедура, связывающая файловую переменную с конкретным файлом. assign(f1,‘c:\tp\10b\file.dat’); Пример assign(f ,);
Слайд #11
2. Процедура, открывающая существующий файл для чтения. reset(f);
Слайд #12
3. Процедура, создающая и открывающая новый файл для записи. (Если файл ранее содержал данные, то они уничтожаются). rewrite(f);
Слайд #13
4. Процедура, открывающая существующий файл для добавления. (Только для текстовых файлов). append(f);
Слайд #14
5. Процедура, закрывающая файл с сохранением в нем данных. close(f);
Слайд #15
6. Процедура, переименовывающая неоткрытый файл. rename(f ,);
Слайд #16
7. Процедура, удаляющая неоткрытый файл. erase(f);
Слайд #17
8. Функция, возвращающая True, если получен признак конца файла, иначе – False. eof(f)
Слайд #18
9. Функция, возвращающая 0, если открытый файл существует, иначе – др. целое число. (Работает с директивой отключения стандартной проверки {$I-}). ioresult
Слайд #19
Могут содержать строки, символы и числа любого типа. Текстовые файлы Перед записью в файл внутреннее представление переменных преобразуется в последовательность символов, т. е. текст.
Слайд #20
Процедуры и функции для работы с текстовыми файлами
Слайд #21
1. Процедуры ввода значений переменных из файла. read(f,); readln(f,);
Слайд #22
2. Процедуры вывода значений выражений в файл. write(f,); writeln(f,);
Слайд #23
3. Функция, возвращающая True, если получен признак конца строки, иначе – False. eoln(f);
Слайд #24
Позволяют организовать прямой доступ к компоненту по его порядковому номеру. Типизированные файлы Перед первым обращением к процедурам ввода-вывода указатель файла стоит в его начале и указывает на первый компонент с номером нуль.
Слайд #25
Типизированные файлы также используют процедуры read(f,) и write(f,). Переменные и выражения в списках ввода-вывода должны иметь тот же тип, что и компоненты файла.
Слайд #26
Процедуры и функции для работы с типизированными файлами
Слайд #27
1. Процедура, смещающая указатель на компонент с номером N (выражение типа longint). seek(f, N);
Слайд #28
2. Процедура, удаляющая часть файла с текущей позиции до его конца. truncate(f);
Слайд #29
3. Функция, возвращающая количество компонентов файла (типа longint). filesize(f);
Слайд #30
4. Функция, возвращающая номер текущего элемента (типа longint). filepos(f);
Слайд #31
Позволяют организовать высокоскоростной обмен данными. Нетипизированные файлы Вместо процедур read и write используются процедуры blockread и blockwrite, позволяющие определять параметры буферов, использующихся при обмене данными.