2010-06-10 257 views
0

我想了解一个汉字是否可以显示,它的unidode是“\ u8D27”,如何使用Java Font方法canDisplay?它需要一个int,但“8D27”不是一个整数,它是如何工作的,是否需要另一种方法将“8D27”转换为int然后使用canDisplay?如果是的话如何翻译呢?[ u8D27]的Unicode代码点是什么?

编辑: 更确切地说,下面的方法是怎么样的?

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

所以,如果我打电话:checkFonts(“\ u8D27”),我可以得到一个是没有答案。

弗兰克

+0

''\ u8D27'=='货'' – kennytm 2010-06-10 19:39:44

回答

1

canDisplay()方法还接受char,那么为什么不只是得到字符串的第一个字符:

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

而且FWIW,你可以charint之间仅仅通过铸造转换:

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

好,如何将“\ u8D27”转换为我的Java程序中的int? – Frank 2010-06-10 20:45:57

+0

String character =“\ u8D27”; int codepoint =(int)character.charAt(0); – cygri 2010-06-10 20:56:46

4

8D27是十六进制,所以你可以写0x8D27作为文字。

例如

private int codePoint = 0x8D27; 

\uXXXX语法代表在该代码点的字符本身和使用,这样你可以表达ASCII Unicode字符。