1

byte[] byteArr1 = {(バイト)0x8E,(バイト)0x62};

バイト配列は、BIG5 の珍しい漢字のバイトで構成されます。

String out = new String(byteArr1, "ISO-8859-1");

ここでは、エンコーディングを ISO-8859-1 に変換して、文字列変数にバイトを割り当てています。しかし、16 進値を (8E 62) から (3F 62) に変更した後。これにより、アウトストリングが変更されます。

前もって感謝します。

4

1 に答える 1

2

ここを見ましたか?

String を作成するときに指定するエンコーディングは、基になるバイト配列のエンコーディングでなければなりません。常に何かから Unicode に変換しています。あなたの場合、"Big5"代わりに試してみてください"ISO-8859-1"

Java String は常に Unicode (String クラスは UTF-16) であるため、copepage フリーです。

于 2012-12-06T09:46:12.337 に答える