Howto: вывод символов UTF-8(каннада) в терминале Windows, используя Java
Я работаю над приложением Java(Tomcat). что иногда пишет в стандартный вывод. Но я замечаю, что индийский язык (скажем, каннада) получается как?????? персонажи на станд. Консоль Windows (терминал) в Windows Vista (SP1 Home Premium, 64-разрядная версия).
Я знаю, что могу запускать tomcat изнутри emacs(GNU Emacs 23.1.50.1 (i386-mingw-nt6.0.6001)), чтобы видеть вывод консоли tomcat изнутри emacs. Emacs хорошо отображает каннаду (хотя и с ошибками).
Но было бы неплохо, если бы я мог запустить Tomcat из-за пределов emacs, если бы мог.
Я понимаю, что могу запустить tomcat также из затмения (где вы можете управлять кодировкой консоли), но, опять же, было бы неплохо запустить tomcat извне затмения, если бы я мог.
Итак, что же делают разработчики, которые хотят видеть свой индийский язык (для рендеринга которого требуются 3 байта)? Кроме того, какие утилиты хвоста они используют?
Я попытался запустить команду chcp 65001. Но после того, как я это сделаю, catalina.bat НЕ запускает все (выходит без вывода):-(
PS: я работаю как администратор, если это поможет.
Спасибо за любые советы и указатели.
2 ответа
После долгих поисков я обнаружил, что cmd.exe НЕ способен печатать символы!
Вы ограничены шрифтом, используемым в cmd. Используемый шрифт просто не имеет этих доступных символов. Вы можете взломать реестр, чтобы добавить больше шрифтов, но вам все равно нужно найти шрифт, который поддерживает эти символы. Вместо этого позвольте Tomcat войти в файл журнала и использовать программу просмотра, в которой есть шрифты, поддерживающие эти глифы (например, Arial, Verdana и т. Д.). Вы можете попробовать TailXP, если вы хотите, чтобы файл хранился в Windows.