Java バイト配列の作成と復号のサンプル(getBytes)

Javaのバイト配列の作成と復号のサンプルです。

確認環境
・Java 8

目次

バイト配列を作成する1(getBytesメソッド)

public  byte[ ]  getBytes (Charset charset)

コード

バイト配列を作成するサンプルです。

package test1;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;

public class Test1 {
	public static void main(String[] args) {
		
		Charset charset = StandardCharsets.UTF_8;
		String test1 = "あA1";

		byte [] a = test1.getBytes(charset);

		for (int i: a){
			System.out.println(i);
			//-29 -127 -126 65 49
		}
	}
}

11行目は、getBytesメソッドで9行目の文字列をバイト配列にしています。
getBytesメソッドの引数は、StandardCharsetsクラスのUTF_8を指定しています。そのためtry~catchを記述する必要はありません。

 

バイト配列を作成する2(getBytesメソッド)

public  byte[ ]  getBytes (String charsetName)  throws  UnsupportedEncodingException

コード

バイト配列を作成するサンプルです。

package test1;
import java.io.UnsupportedEncodingException;

public class Test1 {
	public static void main(String[] args) {

		byte[] b;
		String test1 = "あA1";
		
		try {
			b = test1.getBytes("UTF-8");
			
			for (int i: b){
				System.out.println(i);
				//-29 -127 -126 65 49
			}
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
	}
}

11行目は、getBytesメソッドで8行目の文字列をバイト配列にしています。
getBytesメソッドの引数は、Stringの文字列です。そのためtry~catchを記述する必要があります。

 

バイト配列を復号化する(Stringクラス)

public  String (byte[ ] bytes, Charset charset)

コード

バイト配列を復号化するサンプルです。

package test1;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;

public class Test1 {
	public static void main(String[] args) {
		
		Charset charset = StandardCharsets.UTF_8;
		String test1 = "あA1";
		byte [] a = test1.getBytes(charset);
		for (int i: a){
			System.out.println(i);
			//-29 -127 -126 65 49
		}

		String b = new String(a,charset);
		System.out.println(b); //あA1
	}
}

8~10行目は、バイト配列を作成しています。
16行目はStringクラスのコンストラクタでバイト配列を復号化し新しいStringを生成しています。

関連の記事

Java Base64のエンコードとデコードのサンプル

△上に戻る