JavaのByte[]配列をStringに変換する方法

JavaでByte []配列を文字列に変換する方法

場合によっては、String変数をバイト配列形式(JCE暗号化など)に変換する必要があります。 しかし、その後どうやってconvert a Byte[] array to Stringするのでしょうか?

次のコードのような単純なtoString()関数は機能していません。 元のテキストではなく、バイト値が表示されます。

String s = bytes.toString();

Byte配列をString形式に正しく変換するには、Stringオブジェクトを明示的に作成し、それにByte配列を割り当てる必要があります。

String s = new String(bytes);
public class TestByte
{
    public static void main(String[] argv) {

            String example = "This is an example";
            byte[] bytes = example.getBytes();

            System.out.println("Text : " + example);
            System.out.println("Text [Byte Format] : " + bytes);
            System.out.println("Text [Byte Format] : " + bytes.toString());

            String s = new String(bytes);
            System.out.println("Text Decryted : " + s);


    }
}

出力

Text : This is an example
Text [Byte Format] : [B@187aeca
Text [Byte Format] : [B@187aeca
Text Decryted : This is an example