我想从以 base 64 编码的字符串中获取图像。
我正在使用这种方法:
String image = ABAfXWQAQH11kAEB9dZABAfXWQAQH11kAEB9dZABAfXW ...
public void change(){
byte [] image = DatatypeConverter.parseBase64Binary(image);
System.out.println(image+" bytes");
InputStream in = new ByteArrayInputStream(imagen);
System.out.println(in+" inStream");
BufferedImage finalImage= ImageIO.read(in);
System.out.println(finalImage+" buffer");
}
使用它我得到这个输出
[B@ca2dce bytes
java.io.ByteArrayInputStream@18558d2 inStream
null buffer
Exception in thread "main" java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at MyCLass.change(MyClass.java:48)
at MyClass.<init>(MyClass.java:26)
at MyClass.main(MyClass.java:59)
为什么 bufferedImage 为空?