Кодировки Java для японского языка - PullRequest
1 голос
/ 08 декабря 2011

Наше программное обеспечение имеет скрипт, который создает файлы JAR на разных языках, для японского языка мы используем кодировку SJIS в вызове native2asci.Это сработало в прошлый раз, когда была предпринята попытка сборки на японском языке, но теперь, похоже, работает только в определенных контекстах.Например, в следующем диалоговом окне кодирование работает только в строке заголовка:

enter image description here

Кто-нибудь знает, что может быть причиной этого?Может ли эта проблема быть связана с изменением в Java?

Ответы [ 3 ]

1 голос
/ 08 декабря 2011

Что именно вы проходите через native2ascii? Просто чтобы убедиться, что вы используете native2ascii -encoding Shift_JIS, верно? И вы передаете текстовые файлы или исходные файлы через native2ascii, верно?

Моя единственная другая идея заключается в том, что после преобразования текста в формат \ uXXXX шрифт, используемый для отображения диалогового окна, может содержать не все кандзи и кана. Явно установите шрифт и попробуйте.

1 голос
/ 08 декабря 2011

Я бы предложил проверить эти 2 вещи:

  1. Убедитесь, что преобразования native2ascii верны. Вы должны выполнить преобразование в оба конца с флагом -reverse и убедиться, что ваш вход и выход синхронизированы.
  2. Дважды проверьте, что используемые шрифты могут поддерживать Shift-JIS. Те блоки и символы, которые появляются в тексте диалога и тексте кнопки, выглядят так, как будто символы в порядке, но шрифты могут их не поддерживать.

Еще одно предостережение: если это приложение предназначено для использования в Windows, то вам действительно следует использовать кодировку MS932 или windows-31j. SJIS будет работать для всех символов, кроме дюжины или около того, но оказывается, что эти символы (например, тильда во всю ширину) на самом деле довольно часто используются в Японии.

0 голосов
/ 08 декабря 2011

Я думаю, что правильный способ сделать это - использовать исключительно UTF-8 или UTF-16. Кандзи и Катакана требуют особого внимания.

...