javax.imageio.IIOException :Can't create an ImageInputStream

标签 java inputstream

我正在尝试获取“图像”文件夹中所有图像的高度和宽度。不幸的是,我不断收到“无法创建 ImageInputStream!”错误。我该如何解决?

javax.imageio.IIOException: Can't create an ImageInputStream!
at javax.imageio.ImageIO.read(ImageIO.java:1280)
at test.Test1.main(Test1.java:34)

这是我的完整代码

public class Test1 {
public static void main(String args[]) throws IOException{

     try {
           File f = new File(System.getProperty("user.dir") + System.getProperty("file.separator")+ "Images");
           BufferedImage image = ImageIO.read(f);
           int height = image.getHeight();
           int width = image.getWidth();
           System.out.println("Width : "+ width);
           System.out.println("Height : "+ height);

          } catch (IOException ioe) {
               ioe.printStackTrace();
          }
    }           
} 

最佳答案

那是因为您不是在打开文件,而是在打开目录。

File directory = new File(System.getProperty("user.dir") 
         + System.getProperty("file.separator")+ "Images";

for(File file: directory.listFiles()) {
     BufferedImage image = ImageIO.read(file);
}

关于javax.imageio.IIOException :Can't create an ImageInputStream,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37151907/

相关文章:

java - Mockito 测试无法初始化

java - 在HttpURLConnection中getErrorStream返回的InputStream中获取服务器发送来的有用数据

java - 使用 FileInputStream 而不是 FileReader 时实际会发生什么?

java - IntelliJ "result of inputstream.read is ignored"- 如何修复?

java - 如何在 Cloud Foundry 中更改默认 Spring 配置文件 ("cloud")

java - 使用 Spring 集成 java 配置创建消息驱动的入站 channel 适配器以连接到 Kafka

java - GWT 中的请求间信令

java - 由于主机 "struts.apache.org"当前无法访问,因此无法验证该文件

java - 打开多个InputStream的优点和缺点?

java - 从 POJO 读取 persistence.xml