string—为什么一直接收java.io.filenotfoundexception:(拒绝访问)错误?

6za6bjd0  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(334)

我正在尝试从文件目录加载图像文件。然后,我想把file对象转换成string对象。不幸的是,我一直收到这个错误消息。我该怎么解决?

java.io.FileNotFoundException: E:\workspace\sesaja\Images (Access is denied)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at test.Test1.main(Test1.java:29)

这是我的全部代码

public class Test1 {

     public static void main(String args[]){        

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

    FileInputStream fis = null;
    String str = "";

     try {
            fis = new FileInputStream(f);
            int content;
            while ((content = fis.read()) != -1) {
                // convert to char and display it
                str += (char) content;
            }

            System.out.println("After reading file");
            System.out.println(str);

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (fis != null)
                    fis.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
        }      
    }           

}
c86crjj0

c86crjj01#

在此行末尾连接所需的文件名:

String s = System.getProperty("user.dir") +
System.getProperty("file.separator")+ "Images" + fileName;

似乎您试图从一个目录中读取数据,这在逻辑上是不正确的。
同时使用 FileInputStream 为了读取字符(不是数据),不建议这样做。你可以使用 BufferedReader 相反。
同样要获取目录中文件的名称,您可以阅读以下内容:读取文件夹中的所有文件

相关问题