Файл. Имя файла презентация к уроку на тему

Маршрут (путь) к файлу. Полное имя файла. Атрибуты файлов (в широком смысле).

Чтобы однозначно определить адрес файла на компьютере, необходимо знать:

Путь к папке, где находится файл (аналог адреса квартиры человека);

Имя файла в этой папке (аналог ФИО человека).

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

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

C:WindowsSystem32calc. exe

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

/usr/local/bin/gcc

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

Название (до точки, часто также называют именем);

Расширение (необязательная часть).

Полное имя файла (включая расширение) в Windows может содержать до 260 символов, данное значение определено константой MAX_PATH в Windows API; например максимально допустимое полное имя файла на диске C будет таким «C:<256 символов>NULL». Однако юникод версии некоторых функций позволяют использовать имена файлов содержащие до 32000 символов, такие имена начинаются с префикса «?». Пример:

C:WindowsSystem32calc. exe

При использовании префикса «?» необходимо указывать абсолютный путь к файлу, относительные пути не допускаются. При использовании относительных путей максимальное полное имя файла ограничено константой MAX_PATH (260 символов).

В имени файла запрещено использование некоторых служебных символов: «», «/», «:»(только в Windows - в Linux этот символ в имени разрешён), «*», «?», «"», «<», «>», «|».

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

Расширение файла

Расширение файла может вообще отсутствовать или быть любой длины (в пределах длины имени файла). Расширение определяет тип (формат) файла, то есть по расширению пользователь и ОС определяют тип данных, хранящихся в файле. Например, в Windows, файлы с расширением bmp - несжатые изображения,jpg - сжатые изображения.

Все файлы на компьютере можно условно поделить на:

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

документы .

Только программы умеют что то «делать»: создавать (документы), просматривать (документы) изменять (документы). Документ же - результат работы программы, сохраненный на диск. Документы ничего делать не умеют, это просто данные на диске. Чтобы просмотреть или изменить документ, необходимо, чтобы была установлена программа, умеющая работать с этим типом документа. Если такой программы не будет установлено, ОС не сможет открыть файл.

Например, в ОС Windows для программ используются расширения exe и com . Файлы с другими расширениями можно считать документами.

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

В этой статье я попробую разжевать, разобрать “по косточкам” эту тему настолько подробно и внятно, чтобы стало понятно абсолютно любому человеку, даже если он только вчера сел за компьютер.

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

Забегая вперёд, скажу, что есть два способа добраться до файла - используя либо полный путь к файлу, либо относительный путь. Подробнее об этом чуть позже, а пока разберёмся с именем файла.

Имя файла в операционных системах DOS/Windows состоит из трёх частей:

  1. Название (имя).
  2. Разделитель.
  3. Расширение.

ПРИМЕЧАНИЕ
По умолчанию в Windows расширения файлов скрыты, так что в Проводнике вы можете их и не увидеть. Как сделать их видимыми - зависит от операционной системы.

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

Полный путь к файлу

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

Начнём с истоков. Где хранятся файлы? Правильно - на диске.

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

Файл может храниться непосредственно на диске, либо в какой-то папке (каталоге, директории - это разные названия одного и того же объекта - папки). Папки могут быть вложенными другу в друга (как матрёшки).

То есть полный путь файла начинается с буквы диска и заканчивается именем файла. А между ними могут быть имена каталогов. Каталоги в DOS/Windows разделяются косой чертой (\).

Например, у нас на диске С есть папка 000, а в этой папке есть папка 010, а в этой папке тоже есть папка 100. А уже в папке 100 есть файл 111.ТХТ. Тогда полный путь к файлу будет такой:

С:\000\010\100\111.ТХТ

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

С этим вопросом у новичков обычно сложнее. Потому что теорию относительности люди как-то плохо понимают))))

Разумеется, относительный путь к файлу - это тема намного более простая, чем вышеупомянутая теория Эйнштейна. Поэтому разберёмся и с ней.

Итак, однозначно можно определить местоположение файла, если известен полный путь к нему.

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

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

Сначала давайте вспомним про вложенные папки (каталоги).

Итак, всё начинается с диска. Диск - это корневой каталог. Корневой - потому что он первый в пути, и дальше “расти” уже некуда. Диск - это корень. А дальше растут стволы и ветви (папки), а на ветвях растут листья (файлы).

Соответственно каждая папка имеет родителя (кроме корневого каталога). Но не каждая папка имеет детей (то есть вложенные папки). Что поделаешь - не всем везёт в любви)))

Следовательно, у каждой папки могут быть (а могут и не быть) дочерние папки. И у каждой папки (кроме корневого каталога) есть родительские папки.

Следовательно, в общем случае папка может быть родительской относительно своих “детей”, и дочерней относительно своих “родителей”.

Здесь всё как в жизни - вы чей-то ребёнок, и также чей-то родитель (ну или скоро будете)))

Для вашей мамы вы ребёнок, а для ваших детей - мама (или папа).

А теперь наконец после долгих лирических отступлений перейдём к относительности путей. Итак, снова вспомним наш пример:

С:\000\010 \100\111.ТХТ

Здесь каталог 010 является дочерним относительно каталога 000, и он же является родительским по отношению к каталогу 100.

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

Например, если вы работаете в командной строке и находитесь в папке 100 из нашего примера, то для открытия файла 111.ТХТ вам не надо набирать полный путь к файлу - достаточно написать только имя файла.

Имя файла в данном случае и будет относительным путём. То есть относительный путь - это часть полного пути относительно текущего каталога.

Например, вы находитесь в папке 010. То есть выше находятся

а ниже находится каталог

Тогда относительный путь к файлу 111.ТХТ будет таким:

Так можно перемещаться вниз относительно текущего местоположения.

А можно ли перемещаться вверх?

Да, можно.

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

Например, если мы находимся здесь: С:\000\010\100, и в папке 010 у нас есть файл 011.ТХТ, то открыть его можно так:

А если в папке 000 у нас есть файл 001.ТХТ, то открыть его можно так:

Как прописать путь к файлу

Вернёмся к полному пути, который мы рассмотрели выше:

С:\000\010\100\111.ТХТ

Если у вас есть такие папки и в этих папках есть такой файл, то вы можете ввести этот путь в командной строке, или прописать путь к файлу в адресной строке Проводника и нажать ENTER. Тогда файл откроется (если, конечно, у вас есть программа, которая сможет его открыть и с этой программой связан тип этого файла).

Командную строку можно вызвать комбинацией клавиш WIN+R или через меню ПУСК-ВЫПОЛНИТЬ.

Когда вы откроете командную строку, то можете непосредственно в ней ввести команду (в нашем случае командой будет путь к файлу) и нажать ENTER.

Если же вам любопытно немного помучиться и представить, как люди работали в DOS, то вы можете открыть командный интерпретатор. Для этого в командной строке наберите CMD (для Windows 2000 и выше) или COMMAND (для Windows 95/98/ME) и нажмите ENTER.

Откроется консоль (см. рис.), где вы можете вдоволь натешиться, вводя разные команды. Правда, для этого вы должны их знать - но это уже другая тема…


Если что-то осталось непонятным, то опять же отправляю вас к книге Компьютер для чайника .

Неправильный путь к файлу

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

Причины подобных ошибок могут быть следующими:

  1. Файл не существует по указанному пути.
  2. Указанный путь не существует (например, вы указали диск D, а на вашем компьютере нет диска с такой буквой).
  3. В имени файла содержатся недопустимые символы (список недопустимых символов у каждой операционной системы свой).
  4. Путь к файлу слишком длинный, и операционная система не может его понять.
  5. Кодировка символов в пути к файлу не соответствует кодировке, установленной в операционной системе (это надо, в основном, программистам - обычные пользователи редко встречаются с такой проблемой).

Существует три основных типа файлов:

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

Файлы, название которых начинается с точки, называются скрытыми файлами или «dot» файлами. Увидеть такие файлы можно и с помощью графического файлового менеджера, такого как Наутилус , и из оболочки командной строки. В Наутилусе выберите Правка (Edit) Параметры (Preferences) . В появившемся окне во вкладке Вид (View) выберитеПоказывать скрытые файлы (ShowHiddenFiles) . В командной строке воспользуйтесь для просмотра содержимого каталога командой ls -al. Просматривая скрытые файлы в своем домашнем каталоге, вы можете удивиться их количеству. Эти скрытые файлы обычно бывают конфигурационными файлами приложений. Их прячут, чтобы предотвратить их случайное изменение и не загромождать окно просмотра домашнего каталога.

Типы файлов:

Batchfile(Пакетный файл) - То же самое, что и командный файл. С одержит команды операционной системы

Binaryfile(Двоичный файл) - Содержит данные или команды в двоичном виде

Commandfile(Командный файл) - Содержит команды операционной системы

Datafile(Файл данных) - Содержит данные

Directoryfile(Файл директории) - Содержит информацию о файлах, находящихся в директории

Executablefile(Исполняемый файл) - Содержит программу или команды в исполняемом формате

Libraryfile(Файл библиотеки) - Содержит функции в объектном формате

Mapfile(Файл карты) - Содержит карту программы

Objectfile(Объектный файл) - Содержит код программы (функции) после компиляции

Textfile(Текстовый файл) - Содержит текст (который можно читать); это может

быть файл, который создан редактором текстов или любой файл в формате ASCII.

Путь доступа к файлу:

Файловая система построена из обыкновенных файлов, символических связей и справочников. Эти компоненты обеспечивают способ организации, поиска и управления информацией.

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

Специальные файлы соответствуют физическим устройствам (например, терминал или диск).

Символическая связь - это файл, который указывает на другой файл.

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


Этот тип отношений возможен для многих уровней иерархии файлов и справочников.

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

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

C:\Windows\System32\calc.exe

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

/usr/local/bin/gcc

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

Название (до точки, часто также называют именем);

Расширение (необязательная часть).

Полное имя файла (включая расширение) в Windows может содержать до 260 символов, данное значение определено константой MAX_PATH в Windows API; например максимально допустимое полное имя файла на диске C будет таким «C:\<256 символов>NULL». Однако юникод версии некоторых функций позволяют использовать имена файлов содержащие до 32000 символов, такие имена начинаются с префикса «\\?\». Пример:

\\?\C:\Windows\System32\calc.exe

При использовании префикса «\\?\» необходимо указывать абсолютный путь к файлу, относительные пути не допускаются. При использовании относительных путей максимальное полное имя файла ограничено константой MAX_PATH (260 символов).

В Windows в имени файла запрещено использование некоторых служебных символов: «\», «/», «:», «*», «?», «"», «<», «>», «|». В Linux эти символы, кроме «/», допустимы, хотя использовать их следует с осторожностью, так как некоторые из них могут иметь специальный смысл, а также из соображений совместимости с другими ОС.

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

Файловые менеджеры.

Файловый менеджер (англ.filemanager ) - компьютерная программа, предоставляющая интерфейс пользователя для работы с файловой системой и файлами. Файловый менеджер позволяет выполнять наиболее частые операции над файлами - создание, открытие/проигрывание/просмотр, редактирование, перемещение, переименование, копирование, удаление, изменение атрибутов и свойств, поиск файлов и назначение прав. Помимо основных функций, многие файловые менеджеры включают ряд дополнительных возможностей, например, таких как работа с сетью (через FTP, NFS и т. п.), резервное копирование, управление принтерами и пр.

Выделяют различные типы файловых менеджеров, например:

Навигационные и пространственные - иногда поддерживается переключение между этими режимами.

Двупанельные - в общем случае имеют две равноценных панели для списка файлов, дерева каталогов и т. п.

Файл – это поименованная область памяти на внешнем носителе, содержащая информацию. Имя файлов состоит из 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 комментариев