Base64 dan algoritma pengkodean serupa lainnya biasanya digunakan untuk mengubah data biner menjadi data teks, dengan tujuan menyederhanakan penyimpanan atau transmisi. Lebih khusus lagi, algoritma BASE64 terutama digunakan untuk mengubah data biner menjadi format string ASCII. Bahasa Java menyediakan implementasi algoritma Base64 yang sangat baik. Artikel ini akan menjelaskan secara singkat cara menggunakan base64 dan cara kerjanya.
Fungsi Base64: Tujuan utamanya bukanlah enkripsi, tujuan utamanya adalah untuk mengubah beberapa angka biner menjadi karakter biasa untuk transmisi jaringan. Karena beberapa karakter biner adalah karakter kontrol dalam protokol transmisi, mereka tidak dapat ditransmisikan secara langsung dan perlu dikonversi.
Metode pertama:
Gunakan kelas di Java yang tidak terpapar pada publik melalui refleksi:
/ ****Encode oleh Base64*/ Public Static String EncodeBase64 (byte [] input) melempar Exception {class clazz = class.forname ("com.sun.org.apache.xerces.internal.impl.dv.util.base64"); Metode MainMethod = clazz.getMethod ("encode", byte []. Class); mainMethod.setAccessible (true); Objek retobj = mainmethod.invoke (null, objek baru [] {input}); return (string) retobj; } / ****decode oleh base64* / public static byte [] decodeBase64 (input string) melempar pengecualian {class clazz = class.forname ("com.sun.org.apache.xerces.internal.impl.dv.util.base64"); Metode MainMethod = clazz.getMethod ("decode", string.class); mainMethod.setAccessible (true); Objek retobj = mainmethod.invoke (null, input); return (byte []) retobj; } Metode kedua:
Gunakan commons-codec.jar
/ ** * @param bytes * @return */ public static byte [] decode (byte akhir [] byte) {return base64.decodebase64 (bytes); } / ** * Data biner dikodekan sebagai string base64 * * @param bytes * @return * @throws Exception * / Public Static String Encode (byte akhir [] bytes) {return string baru (base64.encodeBase64 (bytes)); } Metode ketiga:
/ ** * Pengkodean * @param bstr * @return string */ public static string encode (byte [] bstr) {return new Sun.misc.base64encoder (). Encode (bstr); } / ** * decoding * @param str * @return string * / public static byte [] decode (string str) {byte [] bt = null; coba {sun.misc.base64decoder decoder = new sun.misc.base64decoder (); bt = decoder.decodeBuffer (str); } catch (ioException e) {e.printstacktrace (); } return bt; }Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.