我正在尝试调整图像大小,为此我首先将输入流转换为缓冲图像,然后使用该缓冲图像来缩放它
BufferedImage bim=null;
try {
bim=ImageIO.read(myinputstream);
}
catch (Exception ex) { ex.printStackTrace(); }
Image img=bim.getScaledInstance(100, 100, BufferedImage.SCALE_SMOOTH);
但行:
bim=ImageIO.read(myinputstream);
不会给出任何异常,只是在 bim 中返回 null 。为什么 imageIO 无法读取我的输入流。我使用这个流将其写入图像上并且工作正常,但是当 ImageIO 读取它时,它返回 null 。我在某处读到我需要传入文件对象,但为什么还有一个选项。有人可以帮助我吗?
最佳答案
参见ImageIO.read .
If no registered ImageReader claims to be able to read the stream, null is returned.
我怀疑你有这个问题。看看您是如何注册您的 ImageReader
的?
关于java - ImageIO.read(inputstream) 在 BufferedImage 中给出 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36568214/