<
  • Главная
Статьи

Обмеження довжини файлів в Windows особливості і тонкощі

- Автор: Ігор (Адміністратор)

Ви коли-небудь стикалися з повідомленням про помилку в Windows, в якому говорилося б про неможливі скопіювати (перемістити) файл і про те, що ім'я одного з файлів занадто велике? Якщо так, то ви, напевно, задавалися питанням чому таке повідомлення з'явилося (приклад нижче на зображенні). У даній статті будуть пояснені особливості і тонкощі обмежень, які накладаються на довжину імені файлу в Windows.

Залежно від структури файлової системи, на довжину імен файлів будуть накладатися різні обмеження. Важливо пам'ятати і розуміти, що ім'я файлу складається не тільки з розширення і того назви, яке ви дали йому при створенні. Файл включає в себе всю необхідну операційній системі інформацію для точної ідентифікації файлу. Іншими словами, ім'я файлу включає в себе диск і все каталоги, всередині яких знаходиться файл. Крім того, ім'я може містити різну системну інформацію (і не обов'язково, що ви її будете де-небудь бачити).

Примітка: Якщо ви не знали, то в більшості файлових систем каталог - це різновид файлу, але з нульовим розміром даних.

Існує безліч різних файлових систем, кожна з який по-своєму визначає структуру імені файлу, включаючи спосіб побудови шляху до файлу. Наприклад, на невеликих usb пристроях зберігання даних, зазвичай, використовується система FAT32. А на оптичних дисках (CD / DVD) зазвичай використовується UDF або ISO 9660. На системних дисках останніх ОС Windows використовує файлову систему NTFS, яка і стане предметом даної статті (як найбільш поширена для Windows).

Примітка: Наприклад, на системних дисках з Windows XP, часто, використовувалася файлова система FAT32. Однак, у неї був істотний (для сьогоднішнього часу) недолік - це обмеження на максимальний розмір файлу в 4 Гб. NTFS ж не має такого обмеження.

Існує деяка плутанина в цифрах максимальної довжини імені файлу в файлової системі NTFS, яку ви можете виявити в різних джерелах. Для початку, є абсолютний межа, введений Windows API, і він становить 260 символів. Проте, практичний межі менше, ніж 260 символів. Наприклад, всі імена повинні мати нульовий термінатор в кінці. Зазвичай, цей маркер бачить тільки Windows, але він все одно сприймається, як один символ. Таким чином, у вас є тільки 259 доступних символів. Ще три символи використовуються для вказівки диска (наприклад, C: \). Таким чином, реальна межа для імені, що містить всі каталоги, включаючи вкладені, і назва самого файлу разом з розширенням, зменшується до 256 символів.

Примітка: Windows API - ядрового інтерфейс, на якому будується вся операційна система і який використовують програми.

Тим не менш, є ще одна тонкість, пов'язана з тим, як Windows кодує символи. Жоден індивідуальний об'єкт (файл або каталог) не може мати ім'я довше 255 символів. При цьому, ім'я включає в себе прогалини і зворотну косу риску, яка використовується в якості роздільників. Ця межа в 255 символів часто цитується, як межа для назви окремого файлу, але, на практиці, це відноситься тільки до імен файлів в кореневому каталозі без будь-яких каталогів.

Існує і ще одне обмеження на довжину імені файлу, яке часто не береться до уваги. Зазвичай, за умовчанням Windows підтримує альтернативне ім'я файлу, використовуючи стару систему іменування 8.3. Коли ви створюєте папку, Windows буде резервувати 12 символів для альтернативного імені файлу, залишаючи 244 символів для всіх розміщених всередині об'єктів. Використання системи іменування 8.3 можна відключити, але це може викликати проблеми, при використанні старих 16-бітних програм.

Примітка: Система іменування 8.3 досить проста. 8 - це кількість символів найменування. «.» - це роздільник між назвою і розширенням. 3 - це кількість символів для розширення. 12 - це 8 + 1 + 3.

Примітка: Докладніше про те, як відключити підтримку 8.3 Переглянувши за адресою https://technet.microsoft.com/ru-ru/library/cc778996.aspx . Врахуйте, що вам буде потрібно редагувати реєстр .

Існує так само механізм, який дозволяє використовувати більш довгі імена файлів. Наприклад, мережевих систем, часом, потрібно більше гнучкості в іменах файлах. Тому, Windows API включає в себе спеціальну систему поводження для підтримки дуже довгих Unicode імен в блоках по 255 символів. Ці довгі імена починаються з префікса «\\? \" (Без лапок). Так що, якщо ви зіткнулися з проблемою в імені файлу, у якого довжина занадто велика, то спробуйте використовувати цей префікс в імені шляху, наприклад, «\\? \ C: \ file.txt» (без лапок).

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

Додати коментар / відгук

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


Новости
    Без плагина
    На сайте WordPress имеется файл, именуемый как .htaccess. Многие пользователи не предают ему особого внимания и не используют все его возможности. На самом деле файл .htaccess – это дополнительные конфигурации

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

    Слайд-шоу с помощью плагина для WordPress UnPointZero Slider
    Плагин для cms WordPress UnPointZero Slider – новостной слайдер. Он отражает в форме слайд-шоу изображения со ссылками на ваши статьи и краткие выдержки оттуда. Его можно установить и на новостной сайт,

    Плагины для Wordpress
    С помощью этого плагина вы легко сможете интегрировать Google диск на ваш WordPress сайт или блог . Gravity Forms — лучший плагин для создания форм на WordPress, от самых простых (например, форма

    Подписки плагином JetPack: размещение и редакция формы подписки
    Вступление Здравствуйте! В этой статье я покажу, как использовать плагин JetPack для создания пользовательской формы подписки и как эту формы подписки плагином JetPack добавлять в статьи сайта, а при

    Чистка сайта WordPress плагином WP-optimize
    От автора Со временем использования система WordPress накапливает не нужные файлы, комментарии и неиспользуемые данные в базе данных. Эти файлы и данные создаются в процессе работы и нужны для этого,

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

    Резервное копирование WordPress сайта без плагинов
    Вступление Резервное копирование WordPress это второе, что нужно научиться делать после установки WordPress. Можно сколько угодно говорить о безопасности сайта и его защите, но лучшего варианта защиты

    Плагины на приват для Майнкрафт ПЕ
    > > Плагины на приват для Майнкрафт ПЕ Порой всем нам хочется попробовать себя в роли администратора сервера и испытать эту ответственность, но, к сожалению, вы не всегда все знаете о создании

    Плагин WordPress Database Backup. Архивация базы данных блога на WordPress
    Привет друзья! Сегодня на очереди еще один простой, НО, необходимый и полезный плагин — плагин WordPress Database Backup , который с легкостью и самостоятельно произведет процесс, который научно называется:

  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью