忆当年,在idk8的鹰爪下,一直在用sun公司的开元jar包做引用进行图片与base64的转换。
当期不少猿友升级在用jdk11,废话不多说,上代码:
本地图片转base64
public static String convertToBase64(String imagePath) throws IOException {
File imageFile = new File(imagePath);
byte[] imageBytes = Files.readAllBytes(imageFile.toPath());
return Base64.getEncoder().encodeToString(imageBytes);
}
在线图片url转base64
public static String convertImageToBase64(String imageUrl) throws IOException {
URL url = new URL(imageUrl);
InputStream is = url.openStream();
ByteArrayOutputStream os = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = is.read(buffer)) != -1) {
os.write(buffer, 0, bytesRead);
}
byte[] imageBytes = os.toByteArray();
return org.apache.commons.codec.binary.Base64.encodeBase64String(imageBytes);
}