2009-03-19 5 views
7

Я использую netbeans 6.1 на 2 компьютерах.Иврит появляется как вопросительные знаки в netbeans

на одном из них программы:

public static void main(String argv[]) 
{ 
     System.out.println("שלום"); 
} 

печатает нормально, а на остальных вопросительных знаков.
Какая разница между двумя средами?

редактировать: на обоих компьютерах Панель управления \ Язык и региональные стандарты \ Advanced устанавливается в Hebrew
редактировать: Спасибо Майкл Барр, но значение кодировки уже UTF-8. Возможно, это что-то с JVM?
Редактировать: У меня установлено Eclipse, и проблема там также возникает. Я также пробовал читать иврит из файла с тем же результатом.
редактировать: System.getProperty("file.encoding"); возвращает "CP1252" Я попытался System.setProperty("file.encoding","UTF-8") но знаки вопроса остается.

Спасибо,
идо

+0

Вы когда-нибудь находили решение для этого? Ни одно из приведенных ниже решений не помогло мне. – theyuv

ответ

0

Обычно это кодировка по умолчанию на:

Панель управления \ Язык и региональные стандарты \ Advanced
(выберите на иврите комбо)

После изменения этого параметра вам придется перезагрузиться.

1

Установлен ли установлен на иврите по умолчанию? Может быть, языковой пакет не установлен?

Панель управления> Региональные и языковые параметры> Языки. Выберите «Установить файлы для сложных сценариев и права налево (включая тайский)». Это установит поддержку иврита. Вам, вероятно, понадобится диск с ОС.

+0

Вы имеете в виду Windows языковой пакет? – iddober

+0

есть. Я не уверен в иврите, но нам пришлось установить отдельный языковой пакет для японцев. мы видели '?' в некоторых местах и ​​«ящиках» в других. –

+0

'?' означает, что кодировка настроена неправильно, коробки означают, что шрифт не поддерживает символы. –

3

Убедитесь, что NetBeans настроен с кодировкой, поддерживающей символы на иврите. Из NetBeans Wiki:

Чтобы изменить кодировку языка для проекта:

  1. Щелкните правой кнопкой мыши узел проекта в окнах Проекты и выберите Свойства.
  2. В разделе «Источники» выберите значение кодировки из раскрывающегося поля «Кодировка».
1

Как именно вы запускаете программу? Где он печатает свой результат? Это может быть так же просто, как netbeans или консоль с использованием разных шрифтов, один из которых не включает символы на иврите.

Чтобы устранить проблемы с кодированием во время компиляции, попробуйте заменить символы на иврите на unicode escape sequences и посмотреть, не отличается ли результат.

+0

произошла очень странная вещь, после того, как я изменил добавленную опцию VM: «-Dfile.encoding = UTF-8» Это сработало. но после того, как я перезапустил свой компьютер, я получил вместо × × × × × × Ö¹ × вместо еврейских последовательностей Unicode. – iddober

+0

Этот параметр виртуальной машины не должен иметь никакого эффекта после перезапуска, но, возможно, вы также воспользовались языковыми настройками и вступили в силу только после перезапуска? –

2

Вы не можете установить свойство «file.encoding» System.setProperty(); он должен быть установлен в командной строке, когда JVM запускается с -Dfile.encoding=UTF-8. Значение этого свойства считывается при инициализации JVM и кэшируется. К моменту вызова вашего метода main значение кэшируется и изменения свойства игнорируются.

+0

Прохладный, так как я могу изменить использование JVM Netbeans? – iddober

1

Я думаю, что неправильно понял вашу проблему (я думал, что символы не отображаются в редакторе NetBeans). Точные шаги для решения вашей проблемы могут зависеть от версии операционной системы, на которой вы работаете. Win2K, WInXP и Vista имеют несколько разные диалоги и формулировки.

Взгляните на этой странице справки для виртуальной машины Java:

Это звучит, как вы уже настроили систему, как это должно быть, но дьявол в деталях - в системе есть несколько разных «локальных» настроек, которые могут повлиять на это (и для всех, кого я знаю, JVM может выбросить один или два самостоятельно).

0

Нет один ответ из выше не работает.

Я потратил около часа, но выяснил, что проблема заключается не в кодировке String, а в кодировке по умолчанию, которая используется IDE при запуске.

Итак, чтобы получить символы на иврите, арабском, русском и т.д. в выводах консоли Netbeans, вам необходимо изменить netbeans.conf.

Поиск ключевых netbeans_default_options и добавить -J-Dfile.encoding = UTF-8 в кавычки.

 Смежные вопросы

  • Нет связанных вопросов^_^