概要
JavaでBase64を使うには名前がそのままのBase64クラスを使います。実際にはBase64クラスの内部クラスであるBase64.EncoderとBase64.Decoderを使います。Base64を使うのは主にバイナリデータだと思われますが、今回は文字列をBase64にしてから元に戻すまでの処理を書いていきます。encodeに指定するのはbyte[]でdecodeで返ってくるのもbyte[]なので文字列を変換するときにはgetBytes、元に戻すときはStringのコンストラクタを使います。
ソースコード
import java.util.Base64; import java.nio.charset.StandardCharsets; public class Base64Sample{ public static void main(String[] args) { String src = "d-kamiさんが作ったJavaのサンプルプログラムです"; System.out.println(src); String encode = Base64.getEncoder().encodeToString(src.getBytes(StandardCharsets.UTF_8)); System.out.println("Base64に変換後の文字列: " + encode); byte[] decode = Base64.getDecoder().decode(encode); System.out.println("Base64から戻した文字列: " + new String(decode, StandardCharsets.UTF_8)); } }