Путь к файлу полное имя файла. Файл

Теперь поговорим о пути к файлу. Предположим, что на диске С: у нас есть каталог APRIL, а в нем есть файл REPORT.TXT. Полный путь к файлу включает в себя букву диска, перечень всех подкаталогов и само имя файла с расширением. Элементы пути разделяются обратным слешем. В нашем случае путь к файлу будет выглядеть так:

С:/APRIIAREPORT.TXT

Если в подкататоге APRIL есть подкаталог TXT, а в нем есть файл INFO.DOC, то путь будет следующим:

С:/APRILTXTINFO.DOC

Рассмотрим имя файла. Оно состоит из самого имени и расширения. Расширение используется для определения типа файла. Расширение.ТХТ, как правило, у текстовых файлов. Система при открытии файла определенного типа запустит программу, связанную с данным типом файла, и передаст ей открываемый файл. Например, если вы будете открывать файл REPORT.ТХТ, то система запустит программу Блокнот (поскольку по умолчанию Блокнот связан с текстовыми файлами) и загрузит в него наш файл.

Ранее имя файла могло состоять из восьми (или меньше) символов, а расширение - из трех (или меньше). Расширением считалась часть имени файла после точки. Сейчас ситуация изменилась. Полное имя файла (вместе с путем и расширением) может состоять из 260 символов. Понятно, что самые длинные имена файлов можно встретить только в корневом каталоге - 257 символов вместе с расширением. Такие файлы уже нельзя будет скопировать в другие подкаталоги, поскольку будет превышена максимальная длина имени файла.

Теперь поговорим о расширении. Сейчас расширение может состоять из произвольного числа символов, главное, чтобы не была превышена максимальная длина файла. Как правило, используются расширения длиной 1-5 символов. Теперь расширение - это часть имени файла после последней точки. Это потому, что раньше имя файла не могло содержать точку, сейчас может быть точка и не одна. Вот пример:

Длинное имя файла.Путь к файлу.Работа с файлами.doc

В нашем случае расширение файла - .doc - часть имени после последней точки. А всего точек - три.

В именах файлов и каталогов (папок) нельзя использовать следующие символы: / ? : * " > < |

Первый символ используется для разделения элементов пути, второй - для разделения элементов сетевого пути, когда используется наклонный слеш, а не обратный наклонный слеш. Двоеточие зарезервировано для обозначения буквы диска. Символы? и * используются в масках файлах (сейчас поясню, что это такое). Кавычки используются для указания имен файлов, содержащих пробелы, например:

"С:/Program Files/Microsoft/ProgramFile.dll"

Символы <, >, | используются в перенаправлении ввода/вывода в командной строке. Вам не нужно знать, что это такое, хотя основные команды для работы с файлами и каталогами в командной строке мы все-таки рассмотрим в этой главе.

Что такое маска файла? Маска файла позволяет выделить группу файлов. При этом используются символы * (заменяет произвольное количество символов) и? (заменяет один определенные символ). Сейчас разберемся, как работают маски.

Предположим, что в нашем каталоге есть следующие файлы:
G1.doc
G2.doc
G22.doc
G234.doc

Маска *.doc выделит все файлы, поскольку у всех файлов есть расширение.doc. Маска G7.doc (или G?.*) выделит только первые два файла, поскольку они начинаются на букву G, но маска указывает, что в имени должно быть только два символа: первый - G, а второй - произвольный (его и заменяет символ?).

Если вам нужно выделить все файлы, которые начинаются на букву G, но при этом длина файла и его расширение не имеет значения, можно использовать маску G*. Маска G*.ТХТ выделяет все файлы, которые начинаются на букву G и имеют расширение.ТХТ. Но таких файлов у нас нет, поэтому ничего не будет выделено.

Символы * и? можно использовать в любой части маски. Например, маска *.? выделит все файлы, расширение которых состоит из одного любого символа. А маска???.* выделит файлы, имя которых содержит три символа, а расширение - любое.

Думаю, принцип понятен. Маски файлов удобно использовать при поиске файлов, что и будет показано далее.

» [Экзамен по информатике][Билет №9]

Файловая система. Папки и файлы. Имя, тип, путь доступа к файлу.

Файл.

Все программы и данные хранятся в долговременной (внешней) памяти компьютера в виде файлов.

Файл - это определенное количество информации (программа или данные), имеющее имя и хранящееся в долговременной (внешней) памяти.

Имя файла состоит из двух частей, разделенных точкой: собственно имя файла и расширение, определяющее его тип (программа, данные и т. д.). Собственно имя файлу дает пользователь, а тип файла обычно задается программой автоматически при его создании.

В различных операционных системах существуют различные форматы имен файлов. В операционной системе MS-DOS собственно имя файла должно содержать не более восьми букв латинского алфавита и цифр, а расширение состоит из трех латинских букв, например: proba.txt

В операционной системе Windows имя файла может иметь до 255 символов, причем допускается использование русского алфавита, например:
Единицы измерения информации.doc

Файловая система.

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

Файловая система - это система хранения файлов и организации каталогов.

Для дисков с небольшим количеством файлов (до нескольких десятков) удобно применять одноуровневую файловую систему, когда каталог (оглавление диска) представляет собой линейную последовательность имен файлов.

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

Начальный, корневой, каталог содержит вложенные каталоги 1-го уровня, в свою очередь, в каждом из них бывают вложенные каталоги 2-го уровня и т. д. Необходимо отметить, что в каталогах всех уровней могут храниться и файлы.

Путь к файлу.

Для того чтобы найти файл в иерархической файловой структуре необходимо указать путь к файлу. В путь к файлу входят записываемые через разделитель "\" логическое имя диска и последовательность имен вложенных друг в друга каталогов, в последнем из которых находится данный нужный файл.

Например, путь к файлам на рисунке можно записать так:

C:\Музыка\Пикник\

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

Путь к файлу вместе с именем файла называют полным именем файла.

Пример полного имени файлов:

C:\basic\prog123.bas

C:\Музыка\Пикник\Иероглиф.mp3

Операции над файлами.

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

Графическое представление файловой системы.

Иерархическая файловая система MS-DOS, содержащая каталоги и файлы, представлена в операционной системе Windows с помощью графического интерфейса в форме иерархической системы папок и документов. Папка в Windows является аналогом каталога MS-DOS. Однако иерархические структуры этих систем несколько различаются. В иерархической файловой системе MS-DOS вершиной иерархии объектов является корневой каталог диска, который можно сравнить со стволом дерева - на нем растут ветки (подкаталоги), а на ветках располагаются листья (файлы).

В Windows на вершине иерархии папок находится папка Рабочий стол. (Следующий уровень представлен папками Мой компьютер, Корзина и Сетевое окружение (если компьютер подключен к локальной сети).

А теперь представьте, что вам нужно найти определенный документ. Для этого надо знать ящик, в котором он находится, а также "путь" к документу внутри ящика: всю последовательность папок, которые нужно открыть, чтобы добраться до искомых бумаг.

Второй координатой, определяющей место положения файла, является путь к файлу на диске. Путь к файлу - это последовательность, состоящая из имен каталогов, начиная от корневого и заканчивая тем, в котором непосредственно хранится файл.

Вот всем знакомая сказочная аналогия понятия "путь к файлу": "На дубе висит сундук, в сундуке - заяц, в зайце - утка, в утке - яйцо, в яйце - игла, на конце которой смерть Кощеева".

Последовательно записанные имя логического диска, путь к файлу и имя файла составляют полное имя файла.

Если представленная на рис. 2.1 файловая структура хранится на диске С:, то полные имена некоторых входящих в нее файлов в символике операционных систем MS-DOS и Windows выглядят так:

C:\IVANOV\PROGS\progl.pas

C:\PETROV\DATA\task.dat

5. Таблица размещения файлов

Сведения о файловой структуре Диска содержатся на этом же диске в виде таблицы размещения файлов. Используя файловую систему ОС, пользователь может последовательно просматривать на экране содержимое каталогов (папок), продвигаясь по дереву файловой структуры вниз или вверх.

На рис. 4.1 показан пример отображения на экране компьютера дерева каталогов на логическом диске Е: (левое окно).

В правом окне представлено содержимое папки ARCON. ")то множество файлов различных типов. Отсюда, например, понятно, что полное имя первого в списке файла следующее:

E:\GAME\GAMES\ARCON\dos4gw.exe

Из таблицы можно получить дополнительную информацию о файлах. Например, файл dos4gw.exe имеет размер 254 556 байтов и был создан 31 мая 1994 года в 2 часа 00 мин.

Найдя в таком списке запись о нужном файле, применяя команды ОС, пользователь может выполнить с ним различные действия: инициализировать программу, содержащуюся В файле; удалить, переименовать, скопировать файл. Выполнять все эти операции вы научитесь на практическом занятии.

Рис. 4.1 Дерево каталогов

  1. Виды файлов

Исполняемые файлы (программы).

Файлы конфигурации, содержащие параметры, необходимые для работы программы.

Файлы-библиотеки, содержащие описания типовых процедур, которые могут использоваться сразу несколькими программами.

Документы - т. е. некие совокупности информации, создаваемые пользователем (или компьютером) с помощью программ.

Обычные файлы реально представляют собой набор блоков на устройстве внешней памяти, на котором поддерживается файловая система. Такие файлы могут содержать как текстовую информацию, так и двоичную информацию. Файловая система не предписывает обычным файлам какую-либо структуру, обеспечивая на уровне пользователей представление обычного файла как последовательности байтов.

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

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

Как правило, пользователь непосредственно работает лишь с двумя типами файлов: программами и документами. Первые используются, чтобы создавать вторые. Хотя сегодня очень редко встретишь программу, которая умещалась бы в одном файле. Вот почему и говорят сегодня о программных пакетах - т. е. наборах различных типов файлов, в совокупности образующих программу.

Файл – это поименованная область памяти на внешнем носителе, содержащая информацию. Имя файлов состоит из 2 частей: собственного имени и расширения, разделенных точкой. Собственное имя задается пользователем и может содержать 255 символов. В состав этих символов могут входить буквы, цифры, специальные символы за исключением. , т.к. разделяет собственное имя и расширение; ? может заменять один любой символ; * заменяет любое кол-во символов, /\ прямой и обратный слеш, разделяет вложенные папки. Расширение обычно задает та программа, в которой создавался файл. Такое расширение содержит 3 буквы, но пользователь может задать сам расширение. Для файлов различают полное имя (путь). Полное имя показывает все уровни каталога, в котором находится файл. Полное имя файла начинается с имени диска, на котором сохранен файл.

3. Чему равно десятичное значение двоичного числа 10012? Во сколько раз изменится значение этого числа, если справа к нему приписать один нуль, два нуля, три нуля?

1001=1х2 0 +0х2 1 +0х2 2 +1х2 3 =9

10010=0х2 0 +1х2 1 +0х2 2 +0х2 3 +1х2 4 =18

Билет №28

1. Организация файловой структуры. Понятия сектора, дорожки, цилиндра, кластера, fat - таблицы.

Понятие цилиндра. Все современные дисковые операционные системы обеспечи­вают создание файловой системы, предназначенной для хранения данных на дис­ках и обеспечения доступа к ним. Принцип организации файловой системы зависит от операционной системы. Наиболее распространенный тип - табличный. Во-первых, диск представляется как набор поверхностей. У гибких дисков их всего две (верхняя и нижняя), но жесткие диски - это на самом деле «этажерки», состо­ящие из нескольких пластин, поэтому количество поверхностей у них больше. Во-вторых, каждая поверхность диска разделяется на кольцевые дорожки, а каж­дая дорожка - на секторы. Размеры секторов фиксированы и равны 512 байт. Чтобы найти на диске тот или иной файл, надо знать, где он расположен, то есть, нужен его адрес. Проще всего было бы записать адрес файла в виде номера поверх­ности, номера дорожки и номера сектора, но на самом деле это выполняется не совсем так. Дело в том, что у каждой поверхности есть своя головка для чтения записи, и эти головки перемещаются не порознь, а одновременно. То есть, если, например, пятая головка подводится к тридцатой дорожке, то и все головки подво­дятся к своим тридцатым дорожкам. Поэтому вместо понятия дорожки используют понятие цилиндра. Цилиндр - это совокупность всех дорожек, имеющих одинако­вые номера, то есть равноудаленных от оси вращения. Поэтому реально местопо­ложение файла на жестком диске определяется номером цилиндра, номером поверх­ности и номером сектора. Понятие кластера. Сектор - это наименьшая единица хранения данных, но для адресации она используется далеко не во всех файловых системах. Для этого она слишком мала. Такие операционные системы, как MS-DOS и Windows используют для адресации более крупную единицу хранения, называемую клас­тером. Кластер - это группа соседних секторов. Размер кластера зависит от раз­мера жесткого диска. Чем больше диск, тем большим назначается размер кластера. Типовые значения: 8,16,32 или 64 сектора. Данные о том, в каком кластере диска начинается тот или иной файл, хранятся в системной области диска в специальных таблицах размещения файлов (FAT-таблицах). Поскольку нарушение FAR-таблицы приводит к невозможности воспользоваться данными, записанными на диске, к ней предъявляются особые требования надежности, и она существует в двух экземплярах, идентичность которых регулярно контролиру­ется средствами операционной системы. Некоторые операционные системы реализуют 16-раз­рядные поля в таблицах размещения файлов. Такая файловая система называется FAТ 16. Она позволяет разместить в FAT-таблицах не более 65 536 записей (2 16) о местоположении данных. Из-за этого ограничения данные операционные системы не позволяют работать с жесткими дисками размером более 2 Гбайт. В настоящее время операционные системы windows обеспечивают более совершенную файловую систему - Fat 32 с 32-раз­рядными полями в таблице размещения файлов. Это позволяет работать с любыми современными жесткими дисками.

Любая web-страница, картинка, видео и т. д. это в первую очередь файл, имеющий свой абсолютный или относительный путь (адрес). Сам файл в сети Интернет находится на компьютере, который называется сервер . Таким образом, следует учесть способы представления файла на сервере и в сети Интернет. В данной статье мне бы хотелось прояснить перечисленные моменты и внести ясность в затронутый вопрос. Попробуем?

Абсолютный путь (адрес)

Что такое абсолютный путь к файлу?

Абсолютный путь или адрес - это полный путь или адрес, относительно домашней папки на сервере или доменного имени в сети Интернет .

Говоря «домашняя папка » я подразумеваю начало выделенного хостинг-провайдером пространства. Например, если речь идёт о локальном сервере, на операционной системе Windows, в качестве домашней папки будет выступать сам диск, т. е. C:/ . В тоже время, зачастую хостинг-провайдер выделяет пользователю лишь определенное виртуальное (условное) пространство, для которого в качестве домашней папки выступает определенная папка, зачастую называемая /home .

Говоря «доменное имя » я подразумеваю URL-адрес, который начинается с упоминания протокола, например: http://sitename.ru/ . В сети Интернет, именно он является домашней папкой для каждого из представленных ресурсов.

Как узнать абсолютный путь на сервере в PHP?

Если с URL-адресом всё более-менее понятно, то вот с домашней папкой на сервере дело обстоит несколько сложнее. В конце концов, у каждого провайдера есть свои заморочки и это следует учесть.

А начну я с того, что абсолютный путь на сервере обычно определяется относительно места нахождения скрипта, в котором это происходит. Например, файл config.php находится в корневой папке сайта и нам нужно узнать абсолютный путь к нему.

Уточню, говоря «корневая папка » я подразумеваю папку на сервере, выделенную для сайта. Именно она служит отправной точкой URL-адреса относительно доменного имени.

Для этого можно использовать константу __FILE__ , которая содержит полный путь и имя текущего файла, в котором она вызывается. Для того же чтобы получить только полный путь и убрать имя текущего файла, можно использовать функцию dirname() , которая возвращает родительский каталог указанного пути. Например:

$abspath = dirname(__FILE__) ."/";

В PHP 5.3 и новее, можно уже использовать константу __DIR__ :

$abspath = __DIR__

Таким образом очень удобно подключать в дальнейшем файл config.php и использовать полученный в нем абсолютный путь переменной $abspath как отправную точку. Например, предположим, что скрипт test.php находится в папке: path/ - а нужный файл data.txt в папке: data/ . В этом случае вызов может иметь вид:

Include_once("../config.php"); $fh = fopen($abspath ."/2013/12/data/data.txt", "r");

Обратите внимание, что подключение файла config.php я произвел с использование относительного пути, но об этом чуть позже.

Относительный путь (адрес)

Что такое относительный путь к файлу?

Относительный путь или адрес — это путь или адрес относительно места нахождения файла, в котором производится обращение к другому файлу.

Любая файловая система представляет собой строгую иерархию родительских и дочерних папок и файлов. Например: C:\folder\file.php – здесь папка folder\ является дочерней для диска C:\ и родительской для файла file.php .

Для наглядности давайте рассмотрим следующую иерархию:

  • file1.php
  • folder\
    • file.php
    • subfolder\
      • file3.php

Чтобы из файла C:\folder\file.php обратиться к файлу C:\file2.php , нам нужно выйти из текущей папки folder\ , т.е. подняться на один уровень выше. Для этого можно использовать, папку (я бы даже сказал псевдо-папку) родительского каталога , представляющую собой две точки (..) . Другими словами, мы получим путь: ..\file2.php - относительно файла file.php .

Чтобы из файла C:\folder\file.php обратиться с файлу C:\folder\subfolder\file3.php , нам нужно войти в подпапку subfolder\ , т.е. опуститься на один уровень ниже. Так мы получим путь: subfolder\file3.php - относительно файла file.php .

Давайте усложним задачу и обратимся из файла C:\folder\subfolder\file3.php к файлу C:\file2.php . Относительный путь будет иметь вид: ..\..\file2.php - мы поднялись на два уровня выше. Выполнить обратное, т.е из файла C:\file2.php обратимся к файлу C:\folder\subfolder\file3.php . Относительный путь будет иметь вид: folder\subfolder\file3.php - мы опустимся на два уровня ниже.

Преимущества и недостатки относительного пути (адреса)

Очевидно, что относительный путь не содержит домашней папки и родительских папок. Таким образом, конечный адрес получается короче. Более того, в случае необходимости переезда с одного домена на другой не возникнет необходимости прописывать новый абсолютный адрес.

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

Подводя итог, следует отметить, что использование относительного пути или адреса желательно свести к минимуму и использовать абсолютные пути и адреса.

Заключение

В своей статье я постарался рассмотреть фундаментальный вопрос, связанный с абсолютными и относительными путями (адресами) к файлам и папкам. По сути, если вы работаете на компьютере, то уже априори имеете представление о файловой системе, но без учета некоторых нюансов, достаточно сложно сдвинуться с мертвой точки и затронуть ряд вопрос, которые неизбежно относятся к правильности адресации. На этом у меня всё. Спасибо за внимание. Удачи!

в 8:00 Изменить сообщение 5 комментариев