Base64 di Java

Beranda » Java » Base64 di Java

Pada artikel kali ini kita akan membahas tentang cara merubah sebuah string ke dalam format Base64 di Java. Base64 merupakan skema encoding yang mengubah data biner menjadi representasi teks ASCII. Tujuannya adalah agar data biner dapat di kirimkan melalui media teks seperti JSON ataupun media text lainnya. Untuk merubah string ke Base64 terdapat dua cara yaitu yang paling menggunakan class Base64 dan menggunakan class DatatypeConverter.

Base64

Untuk contoh penggunakan encode dan decode menggunakan Base64 bisa dilihat dibawah ini, sebagai catatan Base64 baru dikenalkan sejak java versi 8 (1.8). Jadi perlu diperhatikan versi Java yg kalian gunakan sebelum menggunakan class ini.


import java.nio.charset.StandardCharsets;
import java.util.Base64;

public class Main {
    public static void main(String[] args) {
        String txt = "Codingduluaja";

        String encode2 = Base64.getEncoder().encodeToString(txt.getBytes(StandardCharsets.UTF_8));
        byte[] bytes2 = Base64.getDecoder().decode(encode2);
        String decode2 = new String(bytes2);

        System.out.println(encode2);
        System.out.println(decode2);
    }
}

DatatypeConverter

Penggunaan DatatypeConverter ini menjadi solusi jika project yang kalian menggunakan Java dibawah versi 1.8.

import jakarta.xml.bind.DatatypeConverter;

import java.nio.charset.StandardCharsets;

public class Crypto {
    public static void main(String[] args) {
        String txt = "Codingduluaja";

        String encode1 = DatatypeConverter.printBase64Binary(txt.getBytes(StandardCharsets.UTF_8));
        byte[] bytes = DatatypeConverter.parseBase64Binary(encode1);
        String decode1 = new String(bytes);

        System.out.println(encode1);
        System.out.println(decode1);
    }
}

Kesimpulan

Untuk membuat Sting Base64 di Java, Baik menggunakan class Base64 ataupun class DatatypeConverter menghasilkan output yang sama, namum yang perlu diperhatikan adalah versi Java yang kalian gunakan. Jika java kalian >= 1.8 maka disarankan menggunakan classs Base64 namum jika Java yang kalian gunakan dibawah versi 1.8 maka gunakanlah class DatatypeConverter.

Kategori : Java
Tags : ,
Oleh : budiyono, diterbitkan : disunting :