开发避坑指南(36):Java字符串Base64编码实战指南
需求背景
在与外部系统的交互中出现中文传输乱码的情况,因为只是一个字段乱码,为了方便省事,直接对该字段进行Base64编码后传输,因为Base64编码的结果输出为ASCII字符串,适合传输或存储。那么java中如何对字符串进行Base64编码?
实现分析
在Java中,可以使用java.util.Base64类对字符串进行Base64编码。java.util.Base64类是JDK内置的Base64工具,Java 8及以上版本提供了java.util.Base64类,支持基本的Base64编码和解码操作。
代码实现
import java.util.Base64;
import java.nio.charset.StandardCharsets;public class Base64Example {public static void main(String[] args) {String originalString = "Hello, Base64!";// 编码String encodedString = Base64.getEncoder().encodeToString(originalString.getBytes(StandardCharsets.UTF_8));System.out.println("Base64编码结果: " + encodedString);// 解码(可选)byte[] decodedBytes = Base64.getDecoder().decode(encodedString);String decodedString = new String(decodedBytes, StandardCharsets.UTF_8);System.out.println("解码还原: " + decodedString);}
}
注意事项:使用StandardCharsets.UTF_8确保字符编码一致性,避免乱码