Вопрос

Один из моих пользователей спросил, почему мое приложение не поддерживает полуобывании в именах файлов. Я перешел через мой код, кажется, Windows Function GetOpenFilename усечена любое имя файла, содержащее полутолон. например, «один; два. WAV» -> «один».

Microsoft говорит, что дюгония не допускаются, но не упоминают полуобытия ...

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

Они законно или нет?

Редактировать: ..и, как getopenfileName () работать с полуобываемыми в имени файла?

О, странно - имя файла правильно, кроме «прокручиваемого слева». Итак, «один; два .WAV» выглядит как «два. WAV», пока не нажму его, и не нажму на левую стрелку (тогда все в порядке). Так что это не так, как таковое, только странное поведение.

Это было полезно?

Решение

Занимаются законодательством в формате файлов NTFS.

Используйте любой символ на текущей кодовой странице для имени, включая символы Unicode и символы в расширенном наборе символов (128-255), за исключением следующего:

Следующие зарезервированные символы:

  • <(меньше чем)
  • (лучше чем)

  • : (двоеточие)
  • "(Двойная цитата)
  • / (косая черта)
  • (Backslash)
  • |. (вертикальная полоса или труба)
  • ? (вопросительный знак)
  • (Звездочка)
  • Целочисленная ценность нуля, иногда называемые характером Nul ASCII.
  • Символы, целочисленные представления которых находятся в диапазоне от 1 до 31, за исключением альтернативных потоков, где разрешены эти символы.
  • Любой другой характер, что целевая файловая система не позволяет.

Я могу добавить запятой для имена файлов в моей системе Win7. Следите за кодом, наверное, ваш или сторонний код, который делает странные вещи с неожиданными персонажами (в большинстве случаев пространств).

Другие советы

Хотя это может быть опущено в справочниках Windows, Semicolon также является зарезервированным характером, например, .dat;.bak "- это юридическая команда. То же самое относится и к персонажу PLUS, например« Copy Test1.dat + Test2.dat test3.dat »- это правовая команда.

Правда: Windows позволяет запястья в именах файлов. Но когда вы сжигаете такие файлы на CD или DVD-диск DVD, имена усечены. Это я испытал при использовании впереди Nero Version 9.

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

да. Полукольон - это юридический характер в файловом имени Windows. Это не удивило бы меня, хотя, если бы были другие программы, у которых есть проблема с ними.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top