Файл - либо именованная область памяти на внешнем носителе информации (винчестер, дискета, CD-диск и т.д.), либо логическое устройство представляющее источник или приемник информации (клавиатура , дисплей, принтер, порты и т.д.).
Под файлом можно понимать любой набор данных.
Например: Программа - исходная, откомпилированная, и т.д. Данные – исходные, промежуточные, результирующие, рисунок, текст, график, аудио- видео и т.д. ).
Характеристики файлов
- Файл имеет имя.
- Размер.
- Файл имеет атрибуты.
- Дату и время создания.
- Файлы бывают различных типов.
Имена файлов
Существуют следующие имена файлов:
- Файловые переменные - это имена, которые используются программой на Паскале.
- Дисковые файлы - это имена, под которыми файлы хранятся на диске и используются операционными системами.
- Имена логических устройств - представляющие имена стандартных (аппаратных) логических устройств.
Имена файловых переменных. Определяются по правилам Паскаля.
Имена логических устройств. Существуют следующие имена логических устройств:
CON – консоль (клавиатура/дисплей);
LPT1, LPT2, LPT3 - принтеры (параллельные порты);
PRN – синоним LPT1;
COM1 и COM2 – коммуникационные, последовательные порты; AUX синоним COM1;
NUL - фиктивное устройство. Связывает файл с фиктивным устройством. При попытке ввода сразу сообщает о конце файла, а при выводе не выполняет никаких действий (оно м..б. использовано при отладке программы);
CLOCK$ - системные часы.
Имена дисковых файлов. Имя содержит от 1 до 8 разрешенных символов, т.е. букв, цифр и специальных символов:_ - $ # & @ ! % ’ ^ ( ) { } .
Имя начинается с любого символа. За именем может следовать расширение, которое содержит от 1 до 3 символов, и отделяется от имени точкой. Расширение, как правило, характеризует разновидность файла. В табл.1 приведены примеры расширений некоторых файлов.
Таблица 1
Расширение |
Файл |
pas |
текст программы на Паскале |
for |
текст программы на Фортране |
bas |
текст программы на Бейсике |
asm |
текст программы на Ассемблере |
c |
текст программы на языке С |
cpp |
текст программы на С++ |
obj |
объектный файл |
lib |
библиотечный файл |
lst |
файл листинг |
bat |
пакетный (командный) файл |
txt |
текстовый файл |
arj, rar |
архивный файл |
dbf |
файл база данных |
doc |
файл документ |
drw |
файл рисунок |
msg |
файл сообщений |
sys |
системный файл |
mnu |
файл меню |
bak |
файл копия |
hlp |
файл помощь |
pic |
файл иллюстрация |
html |
интернет |
xls |
файл exsel |
avi |
видео файл |
bmp, jpg, gif, tif |
графические файлы |
com |
программный файл в машинных кодах (непосредственно выполняемая программа) |
exe |
программный файл в машинных кодах (требует настройки адресов после загрузки в ОП) |
|
|
|
|
Размер файла
Размер файла (длина) - это объем занимаемой памяти. Минимальный размер файла 1 – запись (128 байт), максимальный – весь диск (дискета).
Атрибуты файла
Атрибуты файла определяют способ его использования, при этом м.б. установлены следующие атрибуты:
R (Read-only) - файл только для чтения (удалить нельзя);
A (Archive) - не архивированный;
H (Hidden) - скрытый файл (он игнорируется многими командами DOS);
S (System) -системный файл.
Дата и время создания файла
Дата и время создания файла устанавливается по системному календарю и системным часам (автономные с встроенным питанием).
Диски. Каталоги
Дисковые файлы располагаются на дисках, которые имеют имена:
A:, B: - дисководы для гибких дисков;
C:, D:, E:, F: и т.д. – жесткие диски, CD – диски, виртуальные диски и др.
Логический диск – часть жесткого диска. Например жесткий диск С: м.б. разбит на несколько логических дисков C:, D:, E: и т.д. Каждый из дисков м.б. использован для различных целей (разные пользователи, системные программы, приложения, различный доступ пользователей).
Виртуальный диск –часть жесткого диска или ОП с которым можно работать как с отдельным диском но быстрее.
Каталог (directory) – специальный файл, в котором регистрируются другие файлы и каталоги. Каталог содержит имена файлов и их характеристики (длина, атрибуты, дата и времени создания файлов).
Файлы, как правило, объединяются в каталоги по каким-либо признакам. (пакет, система программирование, приложение и т.д.).
Существует главный (корневой) каталог и подкаталоги (подчиненный).
Текущим называется каталог, в котором в настоящий момент работает пользователь.
Расположение файлов и каталогов на диске представляет древовидную, иерархическую структуру (файлы-листья, вершины - каталоги). Для поиска файла на диске необходимо задать:
- имя накопителя;
- путь к файлу (маршрут, т.е. список каталогов);
- имя файла с расширением.
Например: D:\TP\BIN\lr_5_25.pas
Как правило, имена файлов записываются маленькими буквами, а каталогов большими. Максимальная длина пути с именем 79 символов (в DOS).
Типы файлов
В языке Турбо- Паскаль существует три типа файлов:
- Текстовые – которые состоят из символов упорядоченных в строки.
- Типизированные– состоят из элементов одного базового типа, который м.б. любым кроме файлового.
- Не типизированные –используются для доступа к любым файлам, структура которых не имеет значения. Обмен производится блоками кратными записи (128б) либо сектору диска (512б).
Модель текстового файла
Текстовый файл представляет собой последовательность строк переменной длины разделенных маркерами «конец строки», который состоит из управляющего символа «перевод каретки» (#13- CR) и, возможно, «перевод строки» (#10 -LF). Файл заканчивается маркером «конец файла» (#26-EOF) или (^Z). Как правило, файловые операции учитывают эти символы. Модель текстового файла приведена на рис. 15.1.
Рис. 15.1.Модель текстового файла.
Работа с текстовым файлом выполняется построчно и последовательно. Это файл последовательного доступа. Максимальная длина строки 512 байт (т.е. 512 символов). Информация в текстовом файле хранится в символьном виде.
Модель типизированного файла
Типизированный файл представляет собой абстрактную модель набора данных. Файл состоит из однотипных компонент, число которых не описывается, но существует маркер «конец файла» (#26-EOF). Все элементы пронумерованы от 0.
В каждый момент времени программа может взаимодействовать только с одним элементом, на который в данный момент времени установлен указатель. Модель типизированного файла приведена на рис.15.2.
Рис. 15.2. Модель типизированного файла.
К компонентам файла возможен как прямой, так и последовательный доступ. Это файл с произвольным доступом. Информация в типизированном файле хранится в двоичном коде.