Java 图片路径转 Base64 编码:简单易懂代码示例
Java 图片路径转 Base64 编码:简单易懂代码示例
本文将提供一个 Java 代码示例,用于根据图片路径读取图片文件并将其转换为 Base64 编码字符串。
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Base64;
public class ImageToBase64 {
public static void main(String[] args) {
String imagePath = 'path/to/image.jpg'; // 图片路径
String base64Image = convertImageToBase64(imagePath);
System.out.println(base64Image);
}
public static String convertImageToBase64(String imagePath) {
String base64Image = '';
File imageFile = new File(imagePath);
try (FileInputStream imageInFile = new FileInputStream(imageFile)) {
// Reading a Image file from file system
byte imageData[] = new byte[(int) imageFile.length()];
imageInFile.read(imageData);
// Converting Image byte array into Base64 String
base64Image = Base64.getEncoder().encodeToString(imageData);
} catch (IOException e) {
System.out.println('Error: ' + e.getMessage());
}
return base64Image;
}
}
代码解析:
- 获取图片路径:
String imagePath = 'path/to/image.jpg';:设置要读取的图片路径。
- 定义
convertImageToBase64方法:- 该方法接收图片路径作为参数,并返回 Base64 编码的字符串。
- 读取图片文件:
File imageFile = new File(imagePath);:创建 File 对象,代表要读取的图片文件。try (FileInputStream imageInFile = new FileInputStream(imageFile)) { ... }:使用 try-with-resources 语法打开图片文件输入流,确保文件流在使用后自动关闭。
- 读取图片数据:
byte imageData[] = new byte[(int) imageFile.length()];:创建一个字节数组,用来存储图片数据。数组的大小与图片文件大小一致。imageInFile.read(imageData);:将图片数据读入字节数组。
- 将图片数据转换为 Base64 编码:
base64Image = Base64.getEncoder().encodeToString(imageData);:使用 Java 8 的Base64.getEncoder().encodeToString()方法将图片字节数组转换为 Base64 编码的字符串。
- 异常处理:
- 使用
try-catch块捕获IOException异常,并在控制台输出错误信息。
- 使用
- 返回 Base64 编码字符串:
- 方法返回生成的
base64Image字符串。
- 方法返回生成的
- 在
main方法中调用方法:String base64Image = convertImageToBase64(imagePath);:调用convertImageToBase64方法获取 Base64 编码字符串。System.out.println(base64Image);:将 Base64 编码字符串打印到控制台。
总结:
本代码示例演示了如何使用 Java 将图片文件转换为 Base64 编码字符串。通过使用 FileInputStream 和 Base64.getEncoder(),可以轻松实现图片的读取和编码,并将其用于各种应用场景。
原文地址: https://www.cveoy.top/t/topic/ouJv 著作权归作者所有。请勿转载和采集!