java转base64转图片保存到本机
时间: 2024-05-14 22:11:15 浏览: 94
Java中可以使用Base64类将图片转换为Base64编码,然后再将Base64编码保存为图片文件。具体步骤如下:
1.读取图片并进行Base64编码
```
File file = new File("图片路径");
BufferedImage image = ImageIO.read(file);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ImageIO.write(image, "jpg", bos);
byte[] imageBytes = bos.toByteArray();
String base64Img = Base64.getEncoder().encodeToString(imageBytes);
```
2.将Base64编码保存为图片文件
```
byte[] decodedBytes = Base64.getDecoder().decode(base64Img);
FileOutputStream fos = new FileOutputStream("保存路径");
fos.write(decodedBytes);
fos.close();
```
请注意,保存的文件格式需要与读取的图片格式保持一致,例如上述代码中读取的是jpg格式的图片,保存时也需要以jpg格式保存。另外,需要确保保存路径是存在的并且有写权限。
相关问题
用java 将base64编码转为图片保存到c盘
你好! 下面是一段 Java 代码,可以将 base64 编码转换为图片并保存到 C 盘:
```
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Base64;
public class Main {
public static void main(String[] args) throws Exception {
String base64String = "YOUR_BASE64_STRING";
byte[] imageBytes = Base64.getDecoder().decode(base64String);
try (OutputStream outputStream = new FileOutputStream("C:/image.jpg")) {
outputStream.write(imageBytes);
}
}
}
```
在上面的代码中,请将 `YOUR_BASE64_STRING` 替换为你要转换的 base64 编码字符串。 代码中的 `Base64.getDecoder().decode` 方法会将 base64 编码解码为字节数组,然后使用 `FileOutputStream` 将字节数组写入文件。
希望这些信息能帮到你!如果有任何疑问,欢迎随时追问。
javabase64解码转图片保存本地
JavaBase64是一种用于编码二进制数据的算法。在Java中,使用JavaBase64可以将字节数组编码为字符串,也可以将字符串解码回字节数组。如果要将JavaBase64解码的数据转化为图片并保存到本地,可以按照以下步骤进行:
1. 使用JavaBase64的解码方法将字符串解码为字节数组。
2. 创建一个文件输出流,指定保存图片的路径和文件名。
3. 将字节数组写入文件输出流,生成图片文件。
下面是一个示例代码:
```
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Base64;
public class Base64Decoder {
public static void main(String[] args) {
String base64String = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAA3NCSVQICAjb4U/gAAAABlBMVEX///+ZmZkzrOgQAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEgAACxIB0t1+/AAAAe1JREFUOMvNj1EOgzAMRO/8/NnW6kF9AH3WgRdVpEeT5HBUVXzIq+cOo7cMbiCP0AsT7lB28vJW5DbTz7h4z5Mm4XZK4dR7y7qO/fSCNxU9uABlzhm58QbyD5w9wL5xR8wZzo2UMTtGvQaL7Cp7x6j/ffPf6SxVWgEaxo6c+oKcDdP6fK1n4cRKoCkLqQ3aFAp+P5IyDZs8yKQbiqKtODl14G0jsv9gO3jbfjA35LHt2jy3CT1LwP7A9eGyfj3d5M+4COBv8IZfnd+Kll8H+Qb2oDcgAAAABJRU5ErkJggg==";
byte[] imageBytes = Base64.getDecoder().decode(base64String);
try (FileOutputStream fos = new FileOutputStream("test.png")) {
fos.write(imageBytes);
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上述示例中,将base64编码的字符串转化为字节数组后,使用文件输出流将字节数组写入到本地文件“test.png”中。需要注意的是,如果文件已经存在,会覆盖原来的文件。
阅读全文