Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java read()适用于FileInputStream,而不是HttpInputStream_Java - Fatal编程技术网

Java read()适用于FileInputStream,而不是HttpInputStream

Java read()适用于FileInputStream,而不是HttpInputStream,java,Java,我需要从InputStream获取一个BuffereImage 目前,我可以通过运行: BufferedImage bufferedImage = ImageIO.read(inputStream); 当inputStream是FileInputStream的实例时 但是,当inputStream是HttpInputStream的实例时,BuffereImage为空 如何从HttpInputStream创建BuffereImage 谢谢你的帮助 当您试图从URL读取图像时,可以使用IOUtil

我需要从InputStream获取一个BuffereImage

目前,我可以通过运行:

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。