Могу ли я получить консоль, чтобы показать китайский?

Я всегда задавался вопросом, можно ли показывать UTF8 или UTF16-китайский текст в окне консоли, например, Console.WriteLine(китайский). Пока что оно появляется как???. Можно ли запустить сеанс консоли, который поддерживает китайские символы?

Ответ 1

urxvt, Unicode rxvt, является консолью Xwindow, которая покажет китайские символы. Предполагая, что вы используете Windows, это может работать под Cygwin или coLinux.

также см. символы Unicode в командной строке Windows - как?. Я еще не понял, как изменить шрифт на Lucida, но по крайней мере chcp 65001 избавился от вопросительных знаков.

изменение шрифта консоли выглядит сложным: https://superuser.com/questions/5035/how-to-change-the-windows-console-font. (обновление: переключилось на Lucida, щелкнув правой кнопкой мыши на значке консоли на консоли Windows, выбрав "Свойства", вкладку "Шрифт" и выбрав "Люсида", никакая помощь, китайские символы не отображаются в виде блоков).

Это: http://www.vistax64.com/powershell/239480-display-unicode-utf-8-files-windows-console.html, упоминает PowerShell ISE и Console2 (http://www.ghacks.net/2008/06/09/console-2-a-better-cmdexe/), чтобы отображать китайские символы.

Ответ 2

В cygwin следующие настройки могут включать английский интерфейс, но поддерживают отображение символов на китайском языке от cat, tail и т.д.

export LANG = ru_US.UTF-8

export LC_CTYPE = zh_CN

Ответ 3

Перейдите к Control Panel -> Region and Language -> Administrative -> Change system locale... и выберите китайский язык. Перезагрузите, и теперь ваши окна консоли будут кодовой страницей 936, а шрифт будет шрифтом, который может отображать китайские символы.

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

Это работало для меня в Windows 7 без необходимости использования языковых пакетов или специальных версий Windows.