我通常不使用Java并且在Java中遇到了文件管理问题。我使用NetBeans IDE编写Java代码。
我已在我的Java程序主类的同一个包下添加了2个资源文本文件。我使用一个文件来获取输入,并希望将输出写入另一个文件运行时。使用ImputStreamReader
和BufferedReader
从第一个文件中读取数据非常有效。但是,写入资源文件不起作用。
我使用了以下代码:
File file = new File(this.getClass().getResource("outputFileName.text").getPath());
PrintWriter pw = new PrintWriter(new FileWriter(file, true));
pw.write("Some String Data...");
在运行时获得错误如下 -
Jan 30, 2017 5:05:46 AM MyPackage.MyFile MyFunction
SEVERE: null
java.io.FileNotFoundException: file name with correct path.........
.........
.........
它表示在此代码段的第2行是错误的。我已经打印了FILE对象的绝对路径,它显示了正确的路径。即使我已经检查过,两个资源文件都在build文件夹下移动。
但是,另一个奇怪的事情是canRead()
,canWrite()
和exists()
函数 - 都返回false
!!!
我在这么短的时间内搜索了很多但是没有找到符合我目标的解决方案。如果我的问题是重复的,我为此道歉。但是,这段代码有什么问题?我怎样才能解决这个问题并能够做我想做的事呢?