場合によっては、String変数をByte配列形式(JCE暗号化など)に変換する必要があります。しかし、私たちはByte[]配列を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


バイト配列


java

リンク://タグ/文字列/[文字列]