<分区>
我试图从 FileInputStream
创建一个对象并将文件的相对值传递给它的构造函数,但它不能正常工作并抛出一个 FileNotFoundException
try {
InputStream is = new FileInputStream("/files/somefile.txt");
} catch (FileNotFoundException ex) {
System.out.println("File not found !");
}
<分区>
我试图从 FileInputStream
创建一个对象并将文件的相对值传递给它的构造函数,但它不能正常工作并抛出一个 FileNotFoundException
try {
InputStream is = new FileInputStream("/files/somefile.txt");
} catch (FileNotFoundException ex) {
System.out.println("File not found !");
}
最佳答案
开头的 /
将使路径成为绝对路径而不是相对路径。
尝试删除前导的 /
,因此替换为:
InputStream is = new FileInputStream("/files/somefile.txt");
与:
InputStream is = new FileInputStream("files/somefile.txt");
如果您仍然遇到问题,请尝试通过 checking the current directory 确保程序正在您认为的位置运行:
System.out.println(System.getProperty("user.dir"));
关于java - FileInputStream 不适用于相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14553292/