Ich versuche, eine Bilddatei in Base64 String mit BufferedImage-Klasse zu konvertieren. Obwohl der Code keine Kompilierungs-/Laufzeitfehler enthält, wird die Ausgabe nicht in der Konsole gedruckt.Java - Ausgabe nicht gedruckt
Eclipse-IDE-Code:
public class BufferImage {
public static void main(String args[]) {
try
{
BufferedImage img = null;
img = ImageIO.read(new File("image.jpg")); // eventually C:\\ImageTest\\pic2.jpg
String image_string = encodeToString(img, "string");
System.out.println(image_string);
}
catch (IOException e)
{
e.printStackTrace();
}
}
public static String encodeToString(BufferedImage image, String type)
{
String base64String = null;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
try {
ImageIO.write(image, type, bos);
byte[] imageBytes = bos.toByteArray();
BASE64Encoder encoder = new BASE64Encoder();
base64String = encoder.encode(imageBytes);
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
return base64String;
}
}
Wie dies zu überwinden?
ich _really_ fragen, warum Sie denken, dass '„string“' ist ein gültiger Formatname. Verwenden Sie "jpg" stattdessen ("bmp", "png" oder was auch immer Ihr Bild ist). – Tom