Java无法创建输出文件:拒绝访问

时间:2016-05-19 07:57:13

标签: java permissions fileoutputstream

我正在尝试创建一个文件,然后在FileOutputStream中使用它。但是,默认情况下,创建的文件没有读写权限,从而导致访问被拒绝错误。这个问题只发生在我的电脑上,因此我相信它与代码无关。有没有可以解决这个问题的设置?

File f = new File("test.txt");
final OutputStream testStream = new FileOutputStream(f);

运行以下代码将返回false:

File f = new File("test.txt");
f.canRead();    

这是我在FileOutputStream中尝试使用该文件时遇到的错误:

java.io.FileNotFoundException: test.txt (Access is denied)
        at java.io.FileOutputStream.open0(Native Method)
        at java.io.FileOutputStream.open(FileOutputStream.java:270)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
        at java.io.FileOutputStream.<init>(FileOutputStream.java:101)

2 个答案:

答案 0 :(得分:0)

您可能没有该目录的写权限。 其次总是关闭最后阻塞的流。

答案 1 :(得分:-1)

由于未关闭输出流而导致的可能性。您可以尝试在代码末尾关闭Outputstream,如下所示。

File f = new File("test.txt");
final OutputStream testStream = new FileOutputStream(f);

//Other code goes here

testStream.close()