以下是一个示例代码,用于将图片转换为 Base64 格式并根据图片格式携带前缀:\n\njava\nimport java.io.ByteArrayOutputStream;\nimport java.io.File;\nimport java.io.FileInputStream;\nimport java.io.IOException;\nimport java.util.Base64;\n\npublic class ImageToBase64 {\n public static void main(String[] args) {\n String imagePath = "path_to_image"; // 图片路径\n try {\n String base64Image = convertImageToBase64(imagePath);\n System.out.println(base64Image);\n } catch (IOException e) {\n e.printStackTrace();\n }\n }\n\n public static String convertImageToBase64(String imagePath) throws IOException {\n File imageFile = new File(imagePath);\n FileInputStream fileInputStream = new FileInputStream(imageFile);\n ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();\n byte[] buffer = new byte[1024];\n int bytesRead;\n while ((bytesRead = fileInputStream.read(buffer)) != -1) {\n byteArrayOutputStream.write(buffer, 0, bytesRead);\n }\n byte[] imageBytes = byteArrayOutputStream.toByteArray();\n fileInputStream.close();\n byteArrayOutputStream.close();\n\n String base64Image;\n String extension = imagePath.substring(imagePath.lastIndexOf(".") + 1);\n switch (extension.toLowerCase()) {\n case "jpg":\n case "jpeg":\n base64Image = "data:image/jpeg;base64," + Base64.getEncoder().encodeToString(imageBytes);\n break;\n case "png":\n base64Image = "data:image/png;base64," + Base64.getEncoder().encodeToString(imageBytes);\n break;\n case "gif":\n base64Image = "data:image/gif;base64," + Base64.getEncoder().encodeToString(imageBytes);\n break;\n default:\n throw new IllegalArgumentException("Unsupported image format: " + extension);\n }\n\n return base64Image;\n }\n}\n\n\n在上述代码中,convertImageToBase64方法将根据图片的文件扩展名确定图片格式,并在 Base64 字符串前面添加相应的前缀。然后,base64Image将包含完整的 Base64 字符串,包括前缀。


原文地址: https://www.cveoy.top/t/topic/pJFW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录