Лекция 9.2 Файлы и каталоги

Файл — это последовательность данных неопределённого размера, имеющая соб­ственное имя.

Файл может быть сколь угодно большим и сколь угодно малым. Если в файле не хра­нится ни одного байта данных, этот файл называется пустым. Физическим аналогом файла является безразмерная папка для бумаг. В ней может не быть ни одного лис­точка, но папка от этого не перестанет быть информационным контейнером — её мож­но хранить, располагать внутри других контейнеров, она может иметь собствен­ный адрес. Когда в эту папку начнут посту­пать листы с данными, в папке образуется коллекция объектов. Все листы получат общий адрес — адрес папки, но при этом каждый лист сохранит за собой ещё и тот порядковый номер, под которым он посту­пил в коллекцию.

На компьютере файл — это безразмерная последовательность байтов. Каждый байт имеет в файле позицию (порядковый номер) от начала файла. Все байты последовательности имеют общее имя (имя файла) и общий адрес — путь доступа к файлу.

Имя файла

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

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

СОГЛАШЕНИЕ 8.3

Это соглашение было принято в начале 80-х годов прошлого века при создании операционной системы MS-DOS, но широко используется и сегодня. Согласно соглашению 8.3 имя файла строится по следующим правилам.

• Имя файла состоит из двух частей, разделяемых при записи точкой.

• Первая часть содержит от 1 до 8 сим­волов, вторая — не более трёх (может вообще отсутствовать).

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

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

• Использовать в имени файла пробелы, знаки препинания и специальные сим­волы не разрешается.

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

•.AVI — файл видеозаписи. Может быть закодирован как угодно (как именно, указано внутри файла). Для воспроиз­ведения на компьютере может потре­боваться программа-кодек (какая именно, указано внутри файла).

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

•.DOC — форматированный (оформлен­ный) текстовый документ, предназна­ченный для печати на принтере. Может содержать рисунки, таблицы, ви­део- и аудиоклипы и другие информа­ционные объекты.

•.ЕХЕ — программа (файл содержит ко­манды и данные).

•.GIF - малоцветное изображение (до 256 цветов), закодированное табличным способом и сжатое по технологии LZW.

•. НТМ — форматированный электронный документ, предназначенный для про­смотра на экране.

•.JPG — многоцветное (более 16 млн. цветов) изображение, закодированное и сжатое по технологии JPEG.

•.MPG —г файл видеозаписи. Закодиро­ван по технологии MPEG.

•.МР2 — файл видеозаписи. Закодиро­ван по технологии MPEG 2.

•.МРЗ — файл звукозаписи. Закодирован по технологии MPEG I Layer 3.

•.МР4 — файл видеозаписи. Закодиро­ван по технологии MPEG 4.

• TIP - рисунок (изображение), пред­назначенный для печати. Записан в формате кодирования TIFF (как правило, сжатый по технологии LZW).

•.ТХТ — неформатированный текстовый документ (поток текста). В начале фай­ла может стоять код, сигнализирующий о том, какая кодировка использована.

•.WAV — файл звукозаписи. Может быть закодирован как угодно (указано внут­ри файла). Для воспроизведения на компьютере может потребоваться про­грамма-кодек (указана внутри файла).

ДЛИННЫЕ ИМЕНА ФАЙЛОВ

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

• Длина имени не может превосходить 255 символов.

• В имени файла можно использовать символы национальных алфавитов, в том числе русского, и символы верхнего и нижнего регистров.

• Разрешается использовать в имени файла пробелы, точки, иные знаки пре­пинания и математические символы, кроме следующих девяти: < > \? / * +;:

• Расширением имени считается после­довательность символов, находящая­ся за последней точкой в имени файла. Расширение имени может содержать более трех символов.

«Длинными» считаются имена файлов, которые удовлетворяют правилам записи длинных имён, но не соответствуют согла­шению 8.3.

Каталоги

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

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

Полное имя файла

Файл — информационный объект. Его главная функция - хранение дан­ных. Имя файла — его основное свойство, потому что оно выполняет функцию адреса и дает возможность доступа к данным, хра­нящимся в файле. Мы знаем, что основные свойства информационных объектов дол­жны быть уникальными, иначе объекты становятся неразличимыми. Отсюда вывод: имя файла должно быть уникальным. При организации хранения данных долж­ны быть предусмотрены специальные меры, чтобы в одной системе хранения дан­ных не могло быть двух файлов с одинако­выми именами.

На современных компьютерах хранятся сотни тысяч файлов. Следить за тем, что­бы все они имели разные имена, весьма трудно. Проблема решается с помощью каталогов. Следует различать собственное имя файла — имя, данное ему при записи в какой-либо каталог, — и полное имя файла, которое образуется сочетанием собствен­ного имени и пути доступа, который ведёт к файлу в избранной системе хранения. Это даёт возможность использовать одинаковые собственные имена для разных файлов при условии, что они будут размещены в разных каталогах. Например, файлы, имеющие собственное имя «Письмо_013.ТХТ» могут храниться в разных каталогах и иметь разные полные имена:

Переписка\Служебная\Исходящие\Письмо_013.ТХТ

Переписка\Служебная\Входящие\Письмо_013.ТХТ

Переписка\Личная\Исходящие\Письмо_013.ТХТ

При записи полного имени файла имена каталогов, входящие в путь доступа, раз­деляют с помощью специального символа. Для компьютеров, работающих под управлением операционных систем MS-DOS и Windows, в качестве разделителя принята обратная косая черта «\».

На компьютерах, работающих под управ­лением других операционных систем, в качестве разделителя часто используют обычную косую черту «/». В Интернете до­кументы хранятся на компьютерах самых разных систем. При обращении к докумен­там Интернета принято при указании пути доступа использовать обычную косую чер­ту «/».

Операционные системы предоставляют средства для указания не одного, а сразу группы существующих в том или ином каталоге файлов путем задания так называемых шаблонов.

Шаблоном (образцом) является составное имя файла, в полях имени и/или расширения которого используются символы-заменители (глобальные символы). Шаблон обозначает не един­ственный файл, а группу существующих файлов, составные имена которых, сопоставляются с данным шаблоном, т.е. подходят под образец. Область действия образца ограничивается содер­жимым определенного каталога.

Используются символы-заменители? и *.

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

Примеры шаблонов с заменителем?:

• MEMO?R.EXE подходит к любому файлу с расширением ЕХЕ, имя которого начинается

с MEMO, завершается символом R, а между ними находится ровно один произ­вольный символ;

• PROG.??M сопоставляется со всеми файлами, имеющими имя PROG и трехсимвольное

расширение, если последним символом в расширении является М;

• GL???.DAT подходит ко всем файлам с расширением DAT, имеющим имя, начинающееся

с символов GL, за которыми следует не более трех символов.

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

Примеры шаблонов с заменителем *:

• *.BAS сопоставляется со всеми файлами с расширением BAS;

• P*.PAS подходит ко всем файлам с расширением PAS, имя которых начинается с символа Р;

• *.* сопоставляется со всеми файлами, в том числе без расширений;

• *. подходит ко всем файлам, не имеющим расширения;

Сделаем два замечания:

1) к примеру, шаблоны * и *.* не эквивалентны, так как заменитель не может замещать
разделитель имени файла и расширения (.); •

2) при использовании заменителей ограничения на длину имени файла и расширения в
образце не снимаются.

Полезность шаблонов состоит не только в возможности задать множество файлов, но и в возможности упростить задание составного имени единственного файла. Например, вместо существующего файла PROGRAM.PAS часто достаточно указать Р*.*, если при этом не возникает неоднозначности.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: