Почему иногда кодовая страница недопустима в консоли?

Ну, ммм... Я немного в ярости от кодовых страниц в консоли Windows(R).

Моя цель - изменить CP по умолчанию на конкретный CP в консоли без перезагрузки.

Звучит легко, правда?

В Win7 стандартный CP может быть изменен на некоторые CP, но некоторые не могут.

например.

> chcp [ 437 | 850 | 852 | 855 | 857 | 860 | 861 | 863 | 865 | 866 | 869 | 65001 | ...  ]
> Active code page: nnn

но некоторые не могут, например.

> chcp [ 932 | 936 | 949 | 950 ]
> Invalid code page

Если я хочу изменить CP по умолчанию на CP (932, 936, 949, 950), я должен войти в панель управления, изменить язык системы и перезагрузить компьютер.

Разве это не странно? Мне любопытно о причине. Спасибо.

1 ответ

Решение

В Windows 7 вы можете установить кодовую страницу 932 только в том случае, если для вашей общесистемной версии Windows, не поддерживающей Юникод, установлен японский язык (вам не нужно устанавливать дополнительную языковую поддержку, пока вы не захотите получать сообщения на японском языке;)). К сожалению, вам нужно перезагрузить Windows после установки локали. Я предполагаю, что это имеет место с другими кодовыми страницами, которые вы упомянули. После перезагрузки ваш язык по умолчанию будет 932, и у вас также будет разделитель каталогов японского языка:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:¥>chcp
Active code page: 932

C:¥>chcp 65001

Окно консоли воссоздается после этой команды:

Active code page: 65001

C:\>
Другие вопросы по тегам