Окно вывода в Netbeans 7.2 не может правильно отображать тайские символы

Нужна ваша помощь. У меня раздражающая проблема: тайские символы не могут быть напечатаны в окне вывода Netbeans 7.2:

Вывод после System.out.println(...);???????????????????[TH_WORD]

Я изменил netbeans.conf, как уже упоминалось, это не помогает; Я изменил свойства проекта-> Кодировка источников на UTF-8, и источники выглядят хорошо, все тайские символы в источниках правильно печатаются. Но как изменить настройки окна вывода NB?

Windows 7 64bit, Netbeans 7.2 (я запускаю NB как "C:\Program Files (x86)\NetBeans 7.2\bin\netbeans64.exe" --locale en_US)

4 ответа

Решено благодаря беседе Java: Как обнаружить (и изменить?) Кодировку System.console?

Решение было основано и применено:

PrintStream out = new PrintStream (System.out, true, "UTF-8");

используйте соответствующий импорт java.io.*, действительно.

Для азербайджанского языка я попробовал это:

  • добавленной System.setOut(new PrintStream(System.out, true, "UTF8")); в мой код. После этого исправления это изменилось? знаки в разные символы. Слово tədarük раньше отображалось как t? Dar? K. Но теперь он застрял
  • потом я добавил -Dfile.encoding=utf-8 в аргументы Run для свойств проекта, никак
  • затем протестирован с -Duser.language=az, результат был тот же
  • изменил шрифт на консоли вывода (щелкните правой кнопкой мыши на консоли и в окне настроек изменилось Monospaced шрифт в Arial, Ничего не изменилось

Это не помогло. Только после изменения конфига Netbeans все заработало. Я открыл netbeans.conf, в моем случае это было в папке C:\Program Files\NetBeans 7.4\etc, в Linux это будет /usr/local/netbeans-7.4/etc/netbeans.conf

я добавил -J-Dfile.encoding=UTF-8 в конце netbeans_default_options как раз перед кавычкой. Перезапущенный NetBeans. Теперь это работает даже с Monospaced шрифт и без настройки -Duser.language пары.

Так что мне нужны были только две вещи.

  1. добавлять -J-Dfile.encoding=UTF-8 в netbeans_default_options в netbeans.conf
  2. измените кодировку выходной строки в вашем коде: System.setOut(new PrintStream(System.out, true, "UTF8"));

Решением будет изменить шрифт, используемый для окна вывода консоли, на шрифт с тайскими символами. В Eclipse это возможно в диалоге настроек. Прошло не менее 5 лет с тех пор, как я использовал NetBeans, но я на 99% уверен, что что-то подобное доступно и там.

Вы можете добавить системную переменную в мой компьютер

JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8
Другие вопросы по тегам