Это относится как к Windows XP, так и к Windows 7.
Некоторые из моих файлов имеют имена с европейскими символами, например, немецкий a-umlaut, также известный как a-diaeresis.
Они правильно отображаются в проводнике Windows, а также в окне командной оболочки (cmd.exe) в ответ на команду "dir".
Однако, если эта команда "dir" направлена в файл, например
dir > file.txt
затем европейские символы в этом файле представлены в кодовой странице DOS; например, a-umlaut представляется в виде десятичного числа 132 (гекс 0x84). Это не то, что я хочу. Я хочу, чтобы файл находился в кодовой странице ANSI, где, например, a-umlaut является десятичным 228 (hex 0xE4).
Выдача команды "cmd /?""приводит к справочной информации, включая строку
/A Causes the output of internal commands to a pipe or file to be ANSI
Это звучит как то, что я хочу. Тем не менее, либо последовательность команд
cmd /A
dir > file.txt
exit
или эквивалентная одиночная командная строка
cmd /A /C dir > file.txt
выдает точно такой же файл file.txt, что и раньше; с его европейскими символами все еще в кодовой странице DOS.
Итак, мой вопрос, как я могу получить "dir" для записи файла в кодовую страницу ANSI?
- Богатые