Имя файла Ext3 ограничено 255 символами или 255 байтами?

9

Я не могу сохранить файл с именем, содержащим более 127 символов кириллицы UTF-8, в моей файловой системе Ext3. Однако возможно сохранить файлы, содержащие до 255 английских символов UTF-8.

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

v_2e
источник
3
@GioMac: Нет, это не правда. UTF-8 использует схему кодирования переменной длины, и, например, кириллические символы находятся в двухбайтовом диапазоне, ограничивая длину до 127 кодовых точек, если используются только кириллические буквы. Как отметил OP, другие символы с длиной кода в три или четыре байта будут ограничивать длину больше. Подводя итог: Максимальная длина имени файла будет между 255 и 63 символами, в зависимости от используемых кодовых точек.
Свен

Ответы:

11

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

Свен
источник
1
Просто чтобы заметить, что любые UTF-схемы могут максимально использовать 63 кодовых пункта. Используя наименьшие единицы кода для каждой схемы, UTF-8 (63-255), UTF-16 (63-127), UTF-32 (63). Просто в информационных целях, ваш ответ на месте.
Рахли