java base64转成图片
时间: 2023-11-15 15:58:44 浏览: 129
Java中可以使用Base64类将Base64编码的字符串转换为图片。具体步骤如下:
1. 将Base64编码的字符串转换为字节数组。
2. 使用ByteArrayInputStream将字节数组转换为输入流。
3. 使用ImageIO读取输入流并生成BufferedImage对象。
4. 将BufferedImage对象写入到文件中。
下面是一个示例代码,假设base64Str是Base64编码的字符串,newFileName是要生成的图片文件路径:
```
// 将Base64编码的字符串转换为字节数组
byte[] bytes = Base64.getDecoder().decode(base64Str);
// 将字节数组转换为输入流
ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
// 读取输入流并生成BufferedImage对象
BufferedImage bi = ImageIO.read(bais);
// 将BufferedImage对象写入到文件中
File outputfile = new File(newFileName);
ImageIO.write(bi, "jpg", outputfile);
```
注意:在使用ImageIO读取输入流时,需要指定图片类型,例如上面的代码中指定了图片类型为"jpg"。
相关问题
java base64转成图片文件
在Java中,可以使用Base64将字符串转换为图片文件。下面是一个简单的示例代码:
```java
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Base64;
public class Base64ToImage {
public static void main(String[] args) {
String base64String = "base64编码的字符串"; // 替换为你的Base64字符串
String filePath = "图片保存路径"; // 替换为你想保存图片的路径
try {
// 解码Base64字符串为字节数组
byte[] imageBytes = Base64.getDecoder().decode(base64String);
// 创建文件输出流
FileOutputStream outputStream = new FileOutputStream(filePath);
// 写入字节数组到文件
outputStream.write(imageBytes);
// 关闭输出流
outputStream.close();
System.out.println("图片保存成功!");
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
请将代码中的`base64编码的字符串`替换为你要转换的Base64字符串,将`图片保存路径`替换为你想保存图片的路径。运行代码后,图片将保存在指定路径下。
java将base64转成图片
可以使用Java自带的Base64和ImageIO类来实现将Base64字符串转成图片的功能。具体步骤如下:
1. 将Base64字符串转成字节数组。
```java
byte[] imageBytes = Base64.getDecoder().decode(base64String);
```
其中,`base64String`是需要转换的Base64字符串。
2. 将字节数组转成图片。
```java
BufferedImage image = ImageIO.read(new ByteArrayInputStream(imageBytes));
```
3. 将图片保存到本地文件。
```java
File outputFile = new File("output.jpg");
ImageIO.write(image, "jpg", outputFile);
```
其中,`output.jpg`是保存图片的文件名,可以根据实际情况修改。
完整示例代码如下:
```java
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.util.Base64;
import javax.imageio.ImageIO;
public class Base64ToImage {
public static void main(String[] args) throws IOException {
String base64String = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAABlBMVEUAAAD///+l2Z/dAAAASUlEQVR4AWP4z8CQQAJGgKs/8HAwMDA/8AAFhGLjZAAAAAElFTkSuQmCC";
byte[] imageBytes = Base64.getDecoder().decode(base64String);
BufferedImage image = ImageIO.read(new ByteArrayInputStream(imageBytes));
File outputFile = new File("output.jpg");
ImageIO.write(image, "jpg", outputFile);
}
}
```
运行该程序可以将Base64字符串对应的图片保存到本地文件中。