我正在尝试从文件目录加载图像文件。然后,我想将文件对象转换为字符串对象。不幸的是,我一直收到此错误消息。我该如何解决?
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();
}
}
}
}
答案 0 :(得分:0)
在此行的末尾连接所需的文件名:
String s = System.getProperty("user.dir") +
System.getProperty("file.separator")+ "Images" + fileName;
您似乎正在尝试从目录中读取数据,这在逻辑上是不正确的
另外,建议不要使用FileInputStream
来读取字符(而不是数据)。您可以使用BufferedReader
代替
另外,为了获取目录中文件的名称,您可以阅读:Read all files in a folder