2

中国語であると確信しているもののデコードを開始しようとしています。データベースでは次のようになります。衡

Sybaseのエンコードはデフォルトでwindows-1252ですが、上記は何ですか?どうすればそれをデコードして漢字を書き出すことができますか。残念ながらncharとして保存されています。

誰かが疑問に思う場合これはそれがどのように行われるかです:

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

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

@Joachimが言ったように、ありがとう。

4

1 に答える 1

1

これは、 XML(およびHTML4HTML5 )で定義されている10進数字参照 です。数値は、Unicodeコードポイントの10進表現です。

数値を解析してにキャストするだけでint、実際のUnicodeコードポイントを取得できます。次に、を使用Character.toChars()して対応するchar値を取得します(通常は1つだけですが、BMP外の文字の場合は2つの代理値があります)。

于 2012-09-17T10:38:59.800 に答える