我怎么解码中文

时间:2012-09-17 10:33:08

标签: java decode encode

我正要开始解码我确定是中文的东西,它在数据库中看起来像这样:衡

Sybase编码默认是windows-1252,但上面是什么?如何解码它以便写出中文字符。它不幸地存储为nchar。

如果有人想知道 这就是它的完成方式:

int i = new Integer("34913").intValue();

String s = new String(Character.toChars(i));

@Joachim说,谢谢。

1 个答案:

答案 0 :(得分:1)

这是a decimal numeric character reference as defined by XML(以及HTML4HTML5)。该数字是Unicode代码点的十进制表示。

只需解析数字并将其转换为int即可获得实际的unicode代码点。然后使用Character.toChars()获取相应的char值(通常只有一个,但对于the BMP以外的字符,将有两个代理值。