Comme le titre l’indique, je veux savoir comment convertir une image en chaîne base64 en Java. Comment puis-je faire ceci?
Utilisez la classe Base64
.
Si vous utilisez une version antérieure à Java 8, consultez l’une des ressources suivantes:
L’exemple sur exampledepot.com
ou Base64Coder – un encodeur / décodeur Base64 en source ouverte en Java
ou la classe Base64 du package org.apache.commons.codec.binary
code java pour convertir l’image en chaîne
package com.test; import java.io.IOException; import sun.misc.BASE64Encoder; import sun.misc.BASE64Decoder; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.File; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class Test{ public static void main (Ssortingng args[]) throws IOException { BufferedImage img = ImageIO.read(new File("C:/Test/logo.png")); BufferedImage newImg; Ssortingng imgstr; imgstr = encodeToSsortingng(img, "png"); System.out.println(imgstr); } public static Ssortingng encodeToSsortingng(BufferedImage image, Ssortingng type) { Ssortingng imageSsortingng = null; ByteArrayOutputStream bos = new ByteArrayOutputStream(); try { ImageIO.write(image, type, bos); byte[] imageBytes = bos.toByteArray(); BASE64Encoder encoder = new BASE64Encoder(); imageSsortingng = encoder.encode(imageBytes); bos.close(); } catch (IOException e) { e.printStackTrace(); } return imageSsortingng; } }
et peut l’intégrer dans XSL comme ci-dessous
Apache Commons Base64 pour l’encodage et le décodage