Php
<?php
$str = "base64编码解码";
//Base64编码
$data = base64_encode($str);
echo "编码:".$data."\n";
//Base64解码
$bytes = base64_decode($data);
echo "解码:".$bytes."\n";
?>
运行结果:
编码:YmFzZTY057yW56CB6Kej56CB
解码:base64编码解码
Java
使用JDK8及更高版本中的 java.util.Base64
在Java 8中,Base64编码已经成为Java类库的标准。
Base64工具类提供了一套静态方法获取下面三种BASE64编解码器:
基本:输出被映射到一组字符A-Za-z0-9+/,编码不添加任何行标,输出的解码仅支持A-Za-z0-9+/。
URL:输出映射到一组字符A-Za-z0-9+_,输出是URL和文件。
MIME:输出隐射到MIME友好格式。输出每行不超过76字符,并且使用’\r’并跟随’\n’作为分割。编码输出最后没有行分割。
import java.util.Base64;
public class Base64JDK8 {
public static void main(String[] args) {
String str = "base64编码解码";
//Base64编码
Base64.Encoder encoder = Base64.getEncoder();
byte[] data = encoder.encode(str.getBytes());
System.out.println("编码:" + new String(data));
//或者采用以下方法,但是不赞成使用该方法,源码也做了@deprecation标记
System.out.println("编码:" + encoder.encodeToString(str.getBytes()));
//Base64解码
Base64.Decoder decoder = Base64.getDecoder();
byte[] bytes = decoder.decode(data);
System.out.println("解码:" + new String(bytes));
}
}
运行结果:
编码:YmFzZTY057yW56CB6Kej56CB
编码:YmFzZTY057yW56CB6Kej56CB
解码:base64编码解码