Discussion:
допустимы ли спецсимволы в имени файла
(слишком старое сообщение для ответа)
Stanislas Chashchuhin
2007-04-17 20:13:07 UTC
Permalink
Hallo, Eugene Roshal!

WinRAR 3.70 beta 7 (дистрибутив wrar37b7.exe)
OS WinXP SP2 rus

1) Файл внутри rar-архива, имя которого содержит, например, символ '(с)'
(U+00A9: Copyright Sign), не поддается переименованию. При этом не выводится
окно с сообщением 'Cannot rename ...'.
Хотя, вроде, winrar спокойно работает с такими файлами (Add,Extract,Test)

2) Хуже обстоит дело с такими символами, как U+00A5: Yen Sign. Winrar
отображает его хорошо, но при работе с такими файлами (Rename,Add) это символ
заменяется то на '?', то на '_'.

Faithfully Yours,
Stanislas

... "А я как раз тут что-то нацарапал" (c) Чиж
Eugene Roshal
2007-04-18 04:59:25 UTC
Permalink
Hello,

SC> 1) Файл внутри rar-архива, имя которого содержит, например, символ '(с)'
SC> (U+00A9: Copyright Sign), не поддается переименованию. При этом не
SC> выводится окно с сообщением 'Cannot rename ...'.
SC> Хотя, вроде, winrar спокойно работает с такими файлами
SC> (Add,Extract,Test)

Переименование в отличие от упаковки и распаковки пока не поддерживает Unicode
в именах упакованных файлов. Не Unicode имена в RAR архивах хранятся в
кодировке OEM, а преобразование OEM <-> ANSI портит символ '(c)' и подобные,
так что тут без Unicode не обойтись.

SC> 2) Хуже обстоит дело с такими символами, как U+00A5: Yen Sign. Winrar
SC> отображает его хорошо, но при работе с такими файлами (Rename,Add) это
SC> символ заменяется то на '?', то на '_'.

Если упаковка производится в формат RAR, а не ZIP, этот символ заменяться не
должен. Я только что проверил. Разве что под Win9x/Me, где нет нормальной
поддержки Unicode.

Eugene

Loading...