0

文字列値を16進数に変換してから、ASCII値に戻したい。16進値に変換するときは、文字セットを使用して変換します- cp424

これは私がやろうとしていることです:

String str = "abcאבג";               
String hexString = Hex.encodeHexString(str.getBytes("cp424")); 
//some action         
String original_value = Hex.decodeHex(hexString.toCharArray()).toString();

私の問題はcp424、16進数に変換するときに使用しているため、元の文字セットに戻すために変換し直すときに必要です。この変換をさまざまな方法で試しましたが、正しい値が得られませんでした。

これはどのように行うことができますか?16進値から元の値を取り戻すにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

2

コンストラクターoriginal_valueを使用して作成します。String(byte[] bytes, String charsetName)

String original_value = new String(Hex.decodeHex(hexString.toCharArray()), "cp424");
于 2012-04-24T08:19:53.980 に答える