Java read()适用于FileInputStream,而不是HttpInputStream
我需要从InputStream获取一个BuffereImage 目前,我可以通过运行:Java read()适用于FileInputStream,而不是HttpInputStream,java,Java,我需要从InputStream获取一个BuffereImage 目前,我可以通过运行: BufferedImage bufferedImage = ImageIO.read(inputStream); 当inputStream是FileInputStream的实例时 但是,当inputStream是HttpInputStream的实例时,BuffereImage为空 如何从HttpInputStream创建BuffereImage 谢谢你的帮助 当您试图从URL读取图像时,可以使用IOUtil
BufferedImage bufferedImage = ImageIO.read(inputStream);
当inputStream是FileInputStream的实例时
但是,当inputStream是HttpInputStream的实例时,BuffereImage为空
如何从HttpInputStream创建BuffereImage
谢谢你的帮助 当您试图从
URL
读取图像时,可以使用IOUtils
读取byte
数组中的文件,然后将ByteArrayInputStream
传递到ImageIO
,例如:
byte[] byteArray = IOUtils.toByteArray(new URL("<url>").openStream());
BufferedImage bufferedImage = ImageIO.read(new ByteArrayInputStream(byteArray));
byte[]byteArray=IOUtils.toByteArray(新URL(“”.openStream());
BuffereImage BuffereImage=ImageIO.read(新的ByteArrayInputStream(byteArray));
openStream
返回一个inputstream,因此,您应该能够创建buffereImage
对象。您是否从HttpInputStream
返回任何字节?我在HttpInputStream中看到的唯一内容是资源的URL。