Имя файла не должно содержать следующих знаков как разрешить
Перейти к содержимому

Имя файла не должно содержать следующих знаков как разрешить

  • автор:

Слишком длинное имя файла или слишком длинный целевой путь — как исправить?

Как исправить ошибки слишком длинное имя файла или слишком длинный целевой путь

При копировании, создании, сохранении или перемещении файлов и папок в Windows 11 и Windows 10 на внутреннем HDD или SSD, при копировании данных на внешний диск или флешку, вы можете столкнуться с ошибками вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку», «Указано неправильное или слишком длинное имя файла» и другие, имеющие отношение к слишком длинным именам или путям к файлам и папкам.

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

  • Слишком длинное имя файла или слишком длинный целевой путь
    • Причины ошибки и способы её исправить
    • Как включить поддержку длинных путей в Windows
      • В редакторе реестра
      • В редакторе локальной групповой политики

      Причины ошибки «Слишком длинное имя файла» и «Слишком длинный целевой путь» и способы её исправить

      Слишком длинный целевой путь при копировании

      Несмотря на то, что файловой системой NTFS длина пути ограничена 32760 символов, в Windows существует ограничение на полный путь в 260 символов, включая путь к папке и имя файла с расширением. Ещё одно ограничение — 255 символов на имя файла или отдельной папки. Схожие ограничения есть для файловых систем FAT32 и ExFAT. Когда полный путь к файлу, с которым вы выполняете действия, превышает указанное число символов, вы можете получить сообщение об ошибках о слишком длинном целевом пути или слишком длинном имени файла.

      Ошибка Слишком длинное имя файла в Windows

      Отсюда основные способы исправить ошибки, связанные с использованием слишком длинного пути:

      1. Использовать более короткие имена файлов и более простое и «компактное» дерево папок.
      2. Включить поддержку длинных путей — такая опция есть в Windows 10 и Windows 11, далее будет рассмотрен порядок действий. Однако, это решит не все проблемы, о чем мы также поговорим.
      3. Использовать файловые менеджеры, которые могут работать с длинными путями по умолчанию: Total Commander, Files (но для него потребуется включить и поддержку длинных путей в системе) или даже 7-Zip File Manager, который прекрасно с этим справляется.

      Как включить поддержку длинных путей в Windows 10 и Windows 11

      В зависимости от установленной редакции Windows, можно использовать один из следующих способов включения поддержки длинных путей.

      В редакторе реестра

      Если на вашем компьютере установлена Windows 11 или Windows 10 Домашняя, используйте редактор реестра для включения опции:

      1. Нажмите правой кнопкой мыши по кнопке «Пуск» и выберите пункт «Выполнить» или нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter.
      2. В редакторе реестра перейдите к разделу

      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

      Включить поддержку длинных путей в редакторе реестра Windows

    • В правой панели редактора реестра дважды нажмите по параметру с именем LongPathsEnabled и присвойте значение 1 вместо 0 для этого параметра.
    • Закройте редактор реестра, перезагрузите компьютер.
    • В редакторе локальной групповой политики

      В Windows Pro и Enterprise можно использовать редактор локальной групповой политики:

      1. Нажмите клавиши Win+R на клавиатуре, введите gpedit.msc в диалоговом окне «Выполнить» и нажмите Enter.
      2. Перейдите к разделу Конфигурация компьютера — Административные шаблоны — Система — Файловая система.
      3. Дважды нажмите по параметру «Включить длинные пути Win32». Политики файловой системы в gpedit
      4. Установите значение «Включено» для этого параметра, примените настройки. Включить поддержку длинных путей в редакторе локальной групповой политики
      5. Закройте редактор локальной групповой политики и перезагрузите компьютер.

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

      Почему ошибки длинных путей появляются, несмотря на включенную поддержку длинных путей

      Имена файлов слишком длинны для помещения в эту папку

      Даже если вы включите поддержку длинных путей к папкам и файлам в Windows 11/10, при действиях с такими файлами в проводнике и некоторых программах вы продолжите получать ошибки вида «Слишком длинный целевой путь. Имена файлов слишком длинны для помещения в эту целевую папку» или «Указано неправильное или слишком длинное имя файла», также будут недоступны некоторые действия в папках, имеющих длинный путь.

      Причина этого — поддержка длинных путей требуется не только на уровне системы, но и в самой программе, которая работает с этими путями, в качестве примера:

      Работа с длинными путями в файловом менеджере Files

      • Проводник не сможет полноценно работать с длинными путями даже при включенной поддержке.
      • Файловый менеджер Files из магазина приложений будет исправно работать, если включить поддержку длинных путей, и будет сообщать об ошибках при отключенной поддержке.
      • Total Commander или встроенный файловый менеджер 7-Zip работают с длинными путями независимо от того, включена ли их поддержка в Windows.

      То же самое касается не только файловых менеджеров, но и прикладных программ: текстовых, графических и видео редакторов и другого ПО.

      Надеюсь, инструкция прояснила причины ошибки и возможные способы решения проблемы. Если же вопросы остаются — жду их в комментариях.

      А вдруг и это будет интересно:

      • Лучшие бесплатные программы для Windows
      • Как разрешить обычному пользователю запускать программу от имени Администратора без ввода пароля
      • Как выйти из полноэкранного режима в Windows
      • Как включить компактный вид панели быстрых настроек Windows 11
      • Шрифты в интерфейсе Chrome стали более жирными и размытыми — как исправить?
      • Msftconnecttest.com — что это и как исправить возможные ошибки
      • Windows 11
      • Windows 10
      • Android
      • Загрузочная флешка
      • Лечение вирусов
      • Восстановление данных
      • Установка с флешки
      • Настройка роутера
      • Всё про Windows
      • В контакте
      • Одноклассники

        Александр 25.05.2022 в 20:32

      • Sergey 06.08.2022 в 09:09
      • Dmitry 26.05.2022 в 09:16

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

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

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

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

      Сведения о настройке Windows для поддержки длинных путей к файлам см. в разделе «Ограничение максимальной длины пути».

      Имена файлов и каталогов

      Все файловые системы соответствуют одинаковым общим соглашениям об именовании для отдельного файла: базовое имя файла и необязательное расширение, разделенное периодом. Однако каждая файловая система, например NTFS, CDFS, exFAT, UDFS, FAT и FAT32, может иметь конкретные и различные правила формирования отдельных компонентов в пути к каталогу или файлу. Обратите внимание, что каталог — это просто файл со специальным атрибутом, обозначающим его как каталог , но в противном случае следует соблюдать все те же правила именования, что и обычный файл. Так как каталог терминов просто относится к специальному типу файла насколько это касается файловой системы, некоторые справочные материалы будут использовать общий файл терминов, чтобы охватывать как концепции каталогов, так и файлов данных. Из-за этого, если иное не указано, любые правила именования или использования или примеры для файла также должны применяться к каталогу. Путь к термину относится к одному или нескольким каталогам, обратным косикам и, возможно, имени тома. Дополнительные сведения см. в разделе «Пути «.

      Ограничения количества символов также могут отличаться и могут отличаться в зависимости от используемого формата префикса имени файловой системы и пути. Это еще более сложно благодаря поддержке механизмов обратной совместимости. Например, старая файловая система MS-DOS FAT поддерживает не более 8 символов для имени базового файла и 3 символа расширения в общей сложности 12 символов, включая разделитель точек. Это обычно называется именем файла 8.3. Файловые системы Windows FAT и NTFS не ограничиваются именами файлов версии 8.3, так как они поддерживают длинное имя файла, но они по-прежнему поддерживают версию 8.3 длинных имен файлов.

      Соглашения об именах

      Следующие основные правила позволяют приложениям создавать и обрабатывать допустимые имена файлов и каталогов независимо от файловой системы:

      • Используйте период для разделения базового имени файла от расширения в имени каталога или файла.
      • Используйте обратную косую черту (\) для разделения компонентовпути. Обратная косая черта разделяет имя файла от пути к нему и одно имя каталога из другого имени каталога в пути. Не удается использовать обратную косую черту в имени фактического файла или каталога, так как он является зарезервированным символом, который разделяет имена на компоненты.
      • Используйте обратную косую черту в качестве части имен томов, например «C:\» в «C:\path\file» или «\server\share» в «\\server\share\path\file» для имен универсального соглашения об именовании (UNC). Дополнительные сведения о именах UNC см. в разделе » Ограничение длины максимального пути».
      • Не предполагайте конфиденциальность регистра. Например, рассмотрим имена ОСКАРа, Оскара и оскара, чтобы быть одинаковыми, даже если некоторые файловые системы (например, файловая система, совместимая с POSIX), могут рассматривать их как разные. Обратите внимание, что NTFS поддерживает семантику POSIX для конфиденциальности регистра, но это не поведение по умолчанию. Дополнительные сведения см. в статье CreateFile.
      • Конструкторы томов (буквы диска) аналогично не учитывает регистр. Например, «D:\» и «d:\» относятся к тому же тому.
      • Используйте любой символ в текущей кодовой странице для имени, включая символы и символы Юникода в расширенном наборе символов (128–255), за исключением следующих:
        • Следующие зарезервированные символы:
          • < (меньше чем);
          • > (больше чем);
          • : (двоеточие)
          • » (двойная кавычка)
          • / (косая черта вперед)
          • \ (обратная косая черта)
          • | (вертикальная полоса или канал)
          • ? (вопросительный знак)
          • * (звездочка)

          Примечание. Windows распознает 8-разрядную букву ISO/IEC 8859-1 надстроек no, fx и fx как цифры и обрабатывает их как допустимые части имен устройств COM# и LPT#, что делает их зарезервированными в каждом каталоге. Например, echo test > COM¹ не удается создать файл.

          Короткие и длинные имена

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

          Windows Server 2008, Windows Vista, Windows Server 2003 и Windows XP: псевдоним 8.3 нельзя отключить для указанных томов до Windows 7 и Windows Server 2008 R2.

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

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

          Чтобы запросить имена файлов 8.3, длинные имена файлов или полный путь к файлу из системы, рассмотрите следующие параметры:

          • Чтобы получить форму 8.3 длинного имени файла, используйте функцию GetShortPathName .
          • Чтобы получить длинную версию имени файла короткого имени, используйте функцию GetLongPathName .
          • Чтобы получить полный путь к файлу, используйте функцию GetFullPathName .

          В более новых файловых системах, таких как NTFS, exFAT, UDFS и FAT32, Windows сохраняет длинные имена файлов на диске в Юникоде, что означает, что исходное длинное имя файла всегда сохраняется. Это верно, даже если длинное имя файла содержит расширенные символы, независимо от кодовой страницы, активной во время операции чтения или записи диска.

          Файлы с длинными именами файлов можно скопировать между секциями файловой системы NTFS и секциями файловой системы Windows FAT без потери сведений о имени файла. Это может быть не так для старых ФАЙЛОВЫХ систем MS-DOS и некоторых типов файловых систем CDFS (CD-ROM), в зависимости от фактического имени файла. В этом случае короткое имя файла будет заменено, если это возможно.

          Пути

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

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

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

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

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

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

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

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

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

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

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

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

          В выпусках Windows до Windows 10 версии 1607 максимальная длина пути MAX_PATH, которая определяется как 260 символов. В более поздних версиях Windows изменение раздела реестра или использование средства групповой политики требуется для удаления ограничения. Полные сведения см. в разделе «Максимальное ограничение длины пути».

          Пространства имен

          В API Windows используются две основные категории соглашений о пространстве имен, которые обычно называются пространствами имен NT и пространствами имен Win32. Пространство имен NT было разработано для самого низкого уровня пространства имен, в котором могут существовать другие подсистемы и пространства имен, включая подсистему Win32 и, по расширению, пространства имен Win32. POSIX — это еще один пример подсистемы в Windows, созданной на основе пространства имен NT. Ранние версии Windows также определили несколько предопределенных или зарезервированных имен для определенных специальных устройств, таких как порты связи (последовательные и параллельные) и консоль отображения по умолчанию в рамках того, что теперь называется пространством имен устройств NT, и по-прежнему поддерживаются в текущих версиях Windows для обратной совместимости.

          Пространства имен файлов Win32

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

          Для ввода-вывода файла префикс «\\?\» в строку пути сообщает API Windows отключить все синтаксический анализ строк и отправить строку, которая следует за ней прямо в файловую систему. Например, если файловая система поддерживает большие пути и имена файлов, можно превысить MAX_PATH ограничения, которые в противном случае применяются API Windows. Дополнительные сведения об ограничении обычного максимального пути см. в предыдущем разделе о ограничении максимальной длины пути.

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

          Многие, но не все API ввода-вывода файлов поддерживают «\\?\»; Чтобы убедиться в правильности каждого API, необходимо ознакомиться со справочным разделом.

          Обратите внимание, что API Юникода следует использовать для проверки того, что префикс «\\?\» позволяет превышать MAX_PATH.

          Пространства имен устройств Win32

          Префикс «\\.\» получит доступ к пространству имен устройства Win32 вместо пространства имен Win32. Таким образом, доступ к физическим дискам и томам осуществляется напрямую без прохождения файловой системы, если API поддерживает этот тип доступа. Таким образом можно получить доступ ко многим устройствам, отличным от дисков (например, с помощью функций CreateFile и DefineDosDevice).

          Например, если вы хотите открыть последовательный порт связи системы 1, можно использовать COM1 в вызове функции CreateFile . Это работает, так как COM1–COM9 является частью зарезервированных имен в пространстве имен NT, хотя с помощью префикса «\\».\» также будет работать с этими именами устройств. По сравнению с тем, если установлен 100 портов последовательной доски расширения и хотите открыть COM56, его нельзя открыть с помощью COM56, так как для COM56 не существует предопределенного пространства имен NT. Вам потребуется открыть его с помощью «\\.\COM56», так как «\\.\».\» переходит непосредственно в пространство имен устройства, не пытаясь найти предопределенный псевдоним.

          Еще одним примером использования пространства имен устройства Win32 является использование функции CreateFile с «\\.\PhysicalDriveX» (где X является допустимым целым числом) или «\\.\\CdRomX«. Это позволяет напрямую обращаться к этим устройствам, обходя файловую систему. Это работает, так как эти имена устройств создаются системой по мере перечисления этих устройств, а некоторые драйверы также создают другие псевдонимы в системе. Например, драйвер устройства, реализующий имя «C:\», имеет собственное пространство имен, которое также происходит в файловой системе.

          API, которые проходят через функцию CreateFile, обычно работают с префиксом «\\.\». Так как CreateFile — это функция, используемая для открытия файлов и устройств в зависимости от используемых параметров.

          Если вы работаете с функциями API Windows, следует использовать префикс «\\.\» для доступа только к устройствам и не к файлам.

          Большинство API не поддерживают «\\.\»; Распознаются только те, которые предназначены для работы с пространством имен устройства. Всегда проверка справочный раздел для каждого API, чтобы убедиться.

          Пространства имен NT

          Существуют также API, которые позволяют использовать соглашение о пространстве имен NT, но диспетчер объектов Windows делает это ненужным в большинстве случаев. Чтобы проиллюстрировать, полезно просмотреть пространства имен Windows в браузере системных объектов с помощью средства Windows Sysinternals WinObj . При запуске этого средства отображается пространство имен NT, начиная с корневого каталога или \. Вложенная папка с именем «Global??» — это место, в котором находится пространство имен Win32. Именованные объекты устройства находятся в пространстве имен NT в подкаталоге Device. Здесь также можно найти Serial0 и Serial1, объекты устройства, представляющие первые два COM-порта, если они присутствуют в вашей системе. Объект устройства, представляющий том, будет примерно таким, как HarddiskVolume1, хотя числовой суффикс может отличаться. Имя DR0 в подкаталоге «Harddisk0» является примером объекта устройства, представляющего диск, и т. д.

          Чтобы сделать эти объекты устройств доступными для приложений Windows, драйверы устройств создают символьную ссылку (symlink) в пространстве имен Win32 «Global??», к соответствующим объектам устройства. Например, COM0 и COM1 в подкаталоге «Global??» просто соединяются с Serial0 и Serial1, «C:» — это асимметричная ссылка на HarddiskVolume1, «Physicaldrive0» — это асимметричная связь с DR0 и т. д. Без асимметричной связи указанное устройство «Xxx» не будет доступно для любого приложения Windows с помощью соглашений о пространстве имен Win32, как описано ранее. Однако дескриптор может быть открыт для этого устройства с помощью любых API, поддерживающих абсолютный путь к пространству имен NT формата \Device\Xxx.

          Благодаря добавлению поддержки нескольких пользователей через службы терминалов и виртуальные машины, для виртуализации корневого устройства на уровне системы в пространстве имен Win32 также необходимо выполнить виртуализацию. Это было сделано путем добавления симлинки с именем GLOBALROOT в пространство имен Win32, которое можно увидеть в подкаталоге «Global??» средства браузера WinObj, которое ранее обсуждалось, и может получить доступ через путь «\\?\?\GLOBALROOT». Этот префикс гарантирует, что следующий путь выглядит в истинном корневом пути диспетчера системных объектов, а не в зависимом от сеанса пути.

          См. также

          • Сравнение функциональных возможностей файловой системы
          • Именование тома

          «Это не является допустимым именем файла или» » не может открыть этот файл» при сохранении или открытии документа или файла Office для Mac

          При попытке сохранить документ Microsoft Word 2011 для Mac или PowerPoint 2011 для Mac может появиться следующее сообщение об ошибке:

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

          Кроме того, при открытии файла может появиться следующее сообщение об ошибке:

          «Приложению <> не удается открыть этот файл. Возможно, файл используется, файл не является допустимым, файл, либо имя файла может содержать недопустимые символы. «

          Причина

          Эта проблема может возникать, если вы пытаетесь сохранить файл с недопустимым символом в имени файла. Некоторые символы имеют специальные назначения, и их нельзя использовать в именах файлов. Примеры символов: < (знак "меньше" >) и (косая черта) — (косая черта) — (двоеточие) | Вертикальная черта

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

          Ограничения на имена файлов в Windows

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

          Понятия «путь» и «имя файла»

          Очень часто в компьютерной литературе используются термины «путь» и «имя файла» под разными значениями. Обычно под словом «путь» понимают адрес или расположение файла, т. е. диск, папка и подпапки в которых расположен файл. Однако Microsoft и другие считают, что в путь к файлу входит не только его расположение но и само имя файла. А некоторые подразумевают под словом «путь» только имена файла и папок, в которых он расположен, без указания диска. Некоторые пользователи полагают, что «имя файла» не включает расширение. В данной статье расширение всегда является частью имени файла. На примере ниже синим цветом выделен путь к файлу, а красным имя файла.
          X:\папка\подпапка\ файл.расширение

          Зарезервированные символы и имена

          Большинство часто употребляемых символов разрешается использовать в имени файла. Имя файла не должно содержать „” (знак меньше), „>” (знак больше), „:” (двоеточие), „ «” (двойные кавычки), „ /” (слеш), „ \” (обратный слеш), „ |” (вертикальная черта), „ ?” (вопросительный знак), „ *” (звездочка), а также не может заканчиваться точкой или пробелом. Файлы также нельзя называть зарезервированными именами устройств: CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, и LPT9.

          Ограничения на длины имен файлов и путей

          Существуют ограничения на длину имени файла и на длину пути. Абсолютное ограничение длины имени файла вместе включая путь к нему равно 260 символам. Этот предел называют термином MAX_PATH. На самом же деле на практике пределы для имен еще меньше из-за ряда других ограничений. Например, каждая строка на конце должна содержать так называемый нулевой символ, который обозначает конец строки. Несмотря на то, что маркер конца строки не отображается, он учитывается как отдельный символ при подсчете длины, а значит остается 259 символов доступных для имени файла и пути к нему. Первые три символа в пути используются для обозначения диска (например, C:\). Это уменьшает предел для имен папок, подпапок и файла до 256 символов.

          На имя объекта (папки или файла) наложено ограничение длины 255 символов. Этот предел действителен только, если объект не расположен внутри папки. Так как при расположении объекта внутри папки, сумма длин всех папок в которых он расположен, разделителей и имени объекта ограничена 256 символами, то предел длины самого имени объекта меньше 255 символов.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *