图片解码 java_Java 8实现图片BASE64编解码
时间: 2023-08-23 21:03:31 浏览: 81
JAVA将图片转换为Base64编码
Java 8提供了Base64类,可以方便地进行Base64编解码操作。以下是一个Java 8实现图片BASE64编解码的示例代码:
```java
import java.io.*;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Base64;
public class ImageBase64 {
public static void main(String[] args) throws IOException {
String imagePath = "image.jpg";
Path path = Paths.get(imagePath);
// 读取图片文件
byte[] imageBytes = Files.readAllBytes(path);
// 将图片数据编码为Base64字符串
String encodedImage = Base64.getEncoder().encodeToString(imageBytes);
System.out.println("Base64编码后的字符串:" + encodedImage);
// 将Base64字符串解码为图片数据
byte[] decodedImage = Base64.getDecoder().decode(encodedImage);
// 将解码后的图片数据写入文件
String decodedImagePath = "decoded_image.jpg";
try (OutputStream stream = new FileOutputStream(decodedImagePath)) {
stream.write(decodedImage);
}
System.out.println("解码后的图片已保存到:" + decodedImagePath);
}
}
```
在这个示例代码中,我们首先使用Files.readAllBytes()方法读取图片文件的字节数据,然后使用Base64.getEncoder()方法将字节数据编码为Base64字符串。接着,我们使用Base64.getDecoder()方法将Base64字符串解码为字节数据,并将解码后的字节数据写入文件。注意,在写入文件时,我们使用了Java 7引入的try-with-resources语句,以确保文件输出流能够正确关闭。
阅读全文