如何使用InputStream转换或初始化ImageInputStream?

时间:2012-07-23 14:26:19

标签: java image inputstream

我正在开发一个图像抓取应用程序。我正在获取网址

URL imageUrl = new URL(imageSource);

然后我用这个URL创建一个InputStream:

InputStream is = new URL(imageUrl.toString()).openStream();

在此之后,我想创建一个ImageInputStream来确定ImageIO阅读器。

ImageInputStream iis = ??????

但我无法初始化这个。我可以为ImageInputStream实现URL或InputStream吗?

3 个答案:

答案 0 :(得分:8)

这就是你要找的东西:

ImageInputStream iis = ImageIO.createImageInputStream(is);

答案 1 :(得分:0)

更好的方法是使用返回ImageIO.read(url)

BufferedReader

答案 2 :(得分:0)

URL imageUrl = new URL(imageSource);
InputStream is = new URL(imageUrl.toString()).openStream();
ImageInputStream iis = ImageIO.createImageInputStream(is);
Iterator<ImageReader> iter = ImageIO.getImageReaders(iis);

if(!iter.hasNext())
    throw new RuntimeException("No readers found");
ImageReader reader = iter.next();

这是您获取读者的方式,或者是获取读者的方式之一。希望对您有所帮助。