在现代软件开发中,Base64编码是一种常见的数据编码方式,尤其在处理图片、文件上传、API通信等场景中广泛使用。Java 8 及以上版本提供了内置的Base64库,无需引入第三方依赖即可轻松实现编码和解码操作。本教程将带你从零开始,掌握如何在 Java 中使用 Base64。
Base64 是一种将二进制数据转换为 ASCII 字符串的编码方式。它把每 3 个字节(24 位)的数据拆分成 4 个 6 位的单元,再将每个单元映射到一个可打印的 ASCII 字符(A-Z、a-z、0-9、+、/),最后可能用 '=' 填充。
自 Java 8 起,java.util.Base64 类被引入标准库,提供三种编码器:
下面是一个简单的字符串 Base64 编码示例:
import java.util.Base64;public class Base64EncodeExample { public static void main(String[] args) { String originalString = "Hello, Java Base64教程!"; // 使用 Basic 编码器进行编码 String encodedString = Base64.getEncoder() .encodeToString(originalString.getBytes()); System.out.println("原始字符串: " + originalString); System.out.println("Base64 编码后: " + encodedString); }} 运行结果:
原始字符串: Hello, Java Base64教程!Base64 编码后: SGVsbG8sIEphdmEgQmFzZTY057yW57yXIQ==
解码是编码的逆过程,将 Base64 字符串还原为原始字节数组:
import java.util.Base64;public class Base64DecodeExample { public static void main(String[] args) { String encodedString = "SGVsbG8sIEphdmEgQmFzZTY057yW57yXIQ=="; // 解码 Base64 字符串 byte[] decodedBytes = Base64.getDecoder().decode(encodedString); String decodedString = new String(decodedBytes); System.out.println("Base64 字符串: " + encodedString); System.out.println("解码后字符串: " + decodedString); }} 你也可以将整个文件(如图片)读取为字节数组,然后进行 Base64 编码:
import java.nio.file.Files;import java.nio.file.Paths;import java.util.Base64;public class ImageToBase64 { public static void main(String[] args) throws Exception { // 读取图片文件为字节数组 byte[] imageBytes = Files.readAllBytes(Paths.get("example.jpg")); // 编码为 Base64 String base64Image = Base64.getEncoder().encodeToString(imageBytes); System.out.println("图片的 Base64 编码长度: " + base64Image.length()); // 可用于嵌入 HTML 或 JSON 传输 }} IllegalArgumentException。通过本教程,你已经学会了如何使用 Java Base64编码 和 Java Base64解码 功能。Java 内置的 java.util.Base64 类简洁高效,是处理 Base64 数据的首选方案。无论你是初学者还是有经验的开发者,掌握这一技能都将提升你在数据处理和网络通信中的能力。
关键词回顾:Java Base64编码、Java Base64解码、Java内置Base64库、Java Base64教程。
本文由主机测评网于2025-12-04发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025123008.html