Что такое кодовая точка Unicode для [\ u8D27]? - PullRequest
0 голосов
/ 10 июня 2010

Я хочу выяснить, можно ли отобразить китайский символ, для него используется unidode "\ u8D27", как использовать метод Java Font canDisplay?Требуется int, но «8D27» не является целым числом. Как это работает? Нужен ли другой метод для перевода «8D27» в int и использования canDisplay?Если так, как это перевести?

Редактировать: Точнее, как будет выглядеть метод ниже?

boolean checkFonts(String inputUnicode)
{
  ... what goes here ??? ...
}

Так что если я вызову: checkFonts ("\ u8D27"),Я могу получить ответ да нет.

Фрэнк

Ответы [ 2 ]

4 голосов
/ 10 июня 2010

8D27 в шестнадцатеричном формате, поэтому вы можете написать 0x8D27 как литерал.

, например

private int codePoint = 0x8D27;

Синтаксис \uXXXX представляет сам символ в этой кодовой точке и используется так, что вы можете выражать символы Юникода в ASCII.

1 голос
/ 11 июня 2010

Метод canDisplay() также принимает char, так почему бы просто не получить первый символ строки:

return font.canDisplay(inputUnicode.charAt(0));

И FWIW, вы можете конвертировать между char и int, просто приведя:

int codePoint = 0x8D27;
char myCharacter = (char) codePoint;
...