java从url中获取图片并转成base64位
时间: 2024-10-17 16:06:26 浏览: 54
Java 从网络中读取图片 转换成Base64字符串
4星 · 用户满意度95%
在Java中,你可以使用`java.net.URL`和`java.awt.image.BufferedImage`类来从URL获取图片,并通过`javax.imageio.ImageIO`将其转换为Base64编码。以下是一个简单的步骤示例:
1. 首先,创建一个URL对象来代表图片地址:
```java
import java.net.URL;
URL imageUrl = new URL("http://example.com/image.jpg");
```
2. 使用`BufferedImage`加载图像内容:
```java
import java.io.InputStream;
import javax.imageio.ImageIO;
InputStream inputStream = imageUrl.openStream();
BufferedImage image = ImageIO.read(inputStream);
```
3. 将`BufferedImage`转换为`byte[]`数组,然后使用`Base64`编码:
```java
import java.nio.charset.StandardCharsets;
import java.util.Base64;
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
try (ImageIO.write(image, "jpg", byteArrayOutputStream)) {
byte[] imageBytes = byteArrayOutputStream.toByteArray();
String base64Image = Base64.getEncoder().encodeToString(imageBytes);
}
```
4. 最终得到的是Base64字符串:
```java
String encodedImage = "data:image/jpeg;base64," + base64Image;
```
阅读全文