Именование файлов, путей и пространств имен

Что такое файл, путь к нему

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

Физически файл – это контейнер, внутри которого оп

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

В ОС UNIX документами являются даже порты и периферийные устройства.

Видео

Пути

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

Если компонент пути является именем файла, то он должен быть последним компонентом.

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

Полные и относительные пути

для функций API Windows, которые управляют файлами, имена файлов часто могут относиться к текущему каталогу, в то время как некоторым api требуется полный путь. Имя файла задается относительно текущего каталога, если он не начинается с одного из следующих:

  • UNC-имя любого формата, который всегда начинается с двух символов обратной косой черты (" \ \ "). Дополнительные сведения см. в следующем разделе.
  • Обозначение диска с обратной косой чертой, например "C: \ " или "d: \ ".
  • Одна обратная косая черта, например " \ Directory" или " \file.txt". Это также называется абсолютным путем.

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

  • "C:tmp.txt" ссылается на файл с именем "tmp.txt" в текущем каталоге на диске C.
  • "К:темпдир \tmp.txt" ссылается на файл в подкаталоге для текущего каталога на диске C.

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

  • "..\tmp.txt "указывает файл с именем tmp.txt, расположенный в родительском каталоге текущего каталога.
  • "..\..\tmp.txt "указывает файл, который является двумя каталогами над текущим каталогом.
  • "..\ TEMPDIR \tmp.txt "указывает файл с именем tmp.txt, расположенный в каталоге с именем TEMPDIR, который является однорангым каталогом для текущего каталога.

Относительные пути могут сочетать оба типа примеров, например "К:.. \tmp.txt ". Это полезно, поскольку, несмотря на то, что система отслеживает текущий диск вместе с текущим каталогом этого диска, она также следит за текущими каталогами на разных буквах диска (если в системе несколько), независимо от того, какой из обозначений установлен в качестве текущего диска.

Ограничение максимальной длины пути

в выпусках Windows до Windows 10 версии 1607 максимальная длина пути — это максимальный _ путь, который определен как 260 символов. в более поздних версиях Windows для снятия ограничения требуется изменить раздел реестра или использовать средство групповая политика. Дополнительные сведения см. в разделе ограничение максимальной длины пути .

Файл: имена файлов

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

Проблемное копирование

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

В этом случае не поможет даже создание ярлыка. Обычно от пользователя требуется только переименовать файл и повторить попытку. Как вариант, можно заархивировать данные, скопировать и распаковать. Но что делать, если в сотом подкаталоге, в котором находится требуемый файл, имена файлов такие длинные из-за прописанного в них пути?

Теги

Adblock
detector