13

Если я хочу создать новое расширение файла для файла двоичных / текстовых данных, которое откроется в моем собственном приложении (например, расширение «.mylongfileextensionname»), Windows перечислит его с моим приложением (учитывая, что я уже внес его в реестр Windows). до)? Существует ограничение по длине, я имею в виду, должен ли я в моем примере использовать «.mylong» или какой-либо конкретный макет?

2 ответа2

17

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

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

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

10

Я всегда думал 255 всего, как в ответе Прорыва, но я нашел это противоречивым, поскольку я начал перепроверять свои мысли:

Windows 2000 has a 254 character limit.
Windows XP has a 255 character limit.
Windows Vista and Windows 7 has a 260 character limit.

Path+Filename limit is 260 characters.

http://www.wincert.net/tips/microsoft-windows/windows-7/2427-windows-7-file-transfer-issue-destination-path-too-long.html

Подтверждено на этом сайте Microsoft:

http://windows.microsoft.com/en-US/windows-vista/File-names-and-file-name-extensions-frequently-asked-questions (развернуть "Какая максимальная длина имени файла?«)

http://msdn.microsoft.com/en-us/library/aa365247(v=vs.85).aspx

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .