Б29.Файл. Стандартные процедуры работы с ф. Не типизированные ф.(а)
Файл – именованная область памяти на внешнем носителе, предназначенная для хранения данных.
Упорядоченная совокупность произвольного числа однотипных компонент с последовательным методом доступа.
В отличии от массивов в файлах место каждого элемента не определено индексом, число элем. не задано, каждая компонента файла становится доступной, только после перебора всех предшествующих компонент.
Для доступа к записи файла используется текущий указатель, который в начале работы с файлом должен указывать на начальную запись, имеющую № 0. При выполнении операции текущий указатель автоматически перемещается.
Типы файлов:
1.Типизированные – записи которых имеют жёсткую структуру, типа record.
2.Текстовые – состоящие из символов и строковых структур.
3.Нетипизированные – файлы без какой-либо структуры.
Процедуры и ф-ии для всех типов ф-ов.
1.Assign(имя файла,‘имя системного ф.’) устанавливает связь между переменной файлового типа в ПАСКАЛЬ-программе и конкретными физическими файлами на магнитных носителях.
Assign(f, ‘A:\file.dat’);
2.Reset(имя файла) – подготовка к чтению;
Rewrite(имя файла) – подготовка к записи;
3.Read(F) – чтение из файла F
Write(F) – запись в файл F
4.Eof(F) – достигнут ли конец файла при записи?
5.Uose(F) – закрытие файла.
6.Erase(F) – стирание файла.
7.Rename(F, ‘STR’) – переименование.
8.Truncate(F) – усечение файла по текущему положению указателя
9.Файлы параметров процедур могут передаваться по ссылке.
(а)Не типизированными файлами является последовательность байтов без какой-либо структуры. В них можно на примитивном уровне очень быстро и эффективно реализовать доступ к блокам, содержащим требуемое число байтов.
Особенности исполнения стандартных процедур и функций.
Rewrite(F, lblock); Reset(F, lnlock);
Lblock – размер передаваемого блока в байтах (по умолч. 128 байт).
Filesize, Filepos, Seek – используют компоненты длиной lblock каждый.
Blockread(F, buf, nmax, n) – из F в buf считывается максисум nmax блоков; n – фактически прочитано.
Б30.Текстовые файлы.
Текстовые файлы отличаются от типизированных следующими признаками:
1.Их элементами являются символы.
2.Их текстовые строки делятся с помощью метода конца строки, генерируемых при нажатии клавиши ENTER.
3.Спомощью процедуры readln метод строки считывается с помощью writeln метода конца строки.
4.При чтении из файла и записи в файл данные преобразуются автоматически.
Стандартные процедуры и функции для текстовых файлов:
Eoln(F) – конец строки;
Read(f, x1, x2,…xn) – чтение из f в x1…xn;
Write(f, x1,x2,…xn) – запись в f из х1…хn;
Append(f) – открыть текстовый файл для дополнения.