FileOutputStream Java错误

FileOutputStream Java错误,java,filenotfoundexception,read-write,Java,Filenotfoundexception,Read Write,我在Java中尝试输出一些数据时出现了一个奇怪的错误。我对该文件具有读写权限。文件存在(yourFile.exists()打印True),但我仍然得到Java.io.FileNotFoundException 示例代码: File yourFile = new File("./output/blah.txt"); FileOutputStream oFile = new FileOutputStream(yourFile); 任何人都知道我可以尝试修复此问题吗?请注意,FileOutputSt

我在Java中尝试输出一些数据时出现了一个奇怪的错误。我对该文件具有读写权限。文件存在(
yourFile.exists()
打印
True
),但我仍然得到
Java.io.FileNotFoundException

示例代码:

File yourFile = new File("./output/blah.txt");
FileOutputStream oFile = new FileOutputStream(yourFile);

任何人都知道我可以尝试修复此问题吗?

请注意,
FileOutputStream
的构造函数可能会出于几种不同的原因引发
FileNotFoundException


FileNotFoundException
-如果文件存在,但它是一个目录而不是一个常规文件,不存在但无法创建,或者由于任何其他原因无法打开。

在哪一行代码中出现异常?当询问异常时,始终发布异常的完整堆栈跟踪。@程序员:第二个。yourFile.exists()打印“True”,yourFile.getAbsolutePath()提供“/output/blah.txt”,文件的访问权限为每个人的读写权限。。。所以我有点困惑:)JB Nizet:我不知道怎么做?你能把文件的位置也提到这个问题上吗,(你的
Java类文件和
输入文件)这可能是第二个错误吗:文件没有关闭,所以当第二次打开同一个文件时仍然打开?是的,我已经检查了几个选项:-yourFile.exists()打印“True”-yourFile.getAbsolutePath()提供“/output/blah.txt”(因此不是目录)-此文件的访问权限设置为“读/写:所有人”。绝对路径不应以
/
开头?您确定它不是目录吗?您的测试“yourFile.getAbsolutePath()给出“/output/blah.txt”(因此不是目录)”并不能证明它不是目录。你能给我们看一个“
ls-l./output/blah.txt
”吗?这是输出:-rw-r--r--1 Putseys staff 0 Jan 22 13:48./output/blah.txt,但我发现它在try{}块中工作,也就是说,如果我把所有代码放在try块中,它就可以写入这个文件。所以我的问题解决了,但我不知道为什么(对Java不是很有经验);您有什么想法吗?您在运行时从何处获得异常,或者从何处获得编译时警告,表明您没有捕获已检查的异常??你能告诉我们你得到的错误吗?