我正在尝试从文件目录加载图像文件。然后,我想把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();
}
}
}
}
1条答案
按热度按时间c86crjj01#
在此行末尾连接所需的文件名:
似乎您试图从一个目录中读取数据,这在逻辑上是不正确的。
同时使用
FileInputStream
为了读取字符(不是数据),不建议这样做。你可以使用BufferedReader
相反。同样要获取目录中文件的名称,您可以阅读以下内容:读取文件夹中的所有文件