Java 文件夹中的文件,但找不到文件异常

Java 文件夹中的文件,但找不到文件异常,java,file,Java,File,我已将文件声明在同一文件夹中,但它给了我一个文件未找到的例外。文件名是正确的。如果我尝试使用其他方法访问文件信息,我会遇到相同的错误。我不确定原因。是否存在逻辑错误。我是从网站上了解到的> 谢谢,它成功了,但还有一件事>我的文件中只有一行 import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class FilesC { public static vo

我已将文件声明在同一文件夹中,但它给了我一个文件未找到的例外。文件名是正确的。如果我尝试使用其他方法访问文件信息,我会遇到相同的错误。我不确定原因。是否存在逻辑错误。我是从网站上了解到的>

谢谢,它成功了,但还有一件事>我的文件中只有一行

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;


public class FilesC {
    public static void main(String[] args)
    {
        String returnValue = "";
          FileReader file = null;
          String fileName = "C:\\Users\\KingKong\\Desktop\\WorkSpace\\Victory\\src\\test.txt";
            String line = "";

          try {
            file = new FileReader(fileName);
            BufferedReader reader = new BufferedReader(file);
            while ((line = reader.readLine()) != null) {
              returnValue += line + "\n";

            }
          } catch (Exception e) {
              throw new RuntimeException(e);
          } finally {
            if (file != null) {
              try {
                file.close();
              } catch (IOException e) {
                // Ignore issues during closing 
              }
            }
          }
          System.out.println(line);
          System.out.println(returnValue);

    }
}
它给了我输出:

null
myLine

这是怎么可能的。如果只有一行,那么该行和returnValue必须具有相同的值?

您的test.txt文件必须与compile.jar文件完全位于同一文件夹中

我想不是。我比你更信任java:-

当然,请尝试使用绝对路径


如果您没有打开请求文件所需的权限,则可能引发“未找到文件”异常。

此循环中的最后一次迭代清除了以下行:

while ((line = reader.readLine()) != null) {
   returnValue += line + "\n";
}

输出包含null,因为变量行包含null:

while ((line = reader.readLine()) != null) {
  returnValue += line + "\n";
}

当while完成时,该行将为空

尝试使用绝对路径,如D:/foderName/file.txt while line=reader.readLine!=null将在行变量到达文件末尾后将其设置为null。这就解释了为什么line和retunrValue是不同的。@RahulBobhate感谢为什么投了反对票?虽然故障的可能原因已经给出,但仍然存在另一种可能性。$chmod 0 test.txt$java FilesC线程主java.lang.RuntimeException:java.io.FileNotFoundException:test.txt在FilesC.mainFilesC.java:19上的权限被拒绝
while ((line = reader.readLine()) != null) {
   returnValue += line + "\n";
}
while ((line = reader.readLine()) != null) {
  returnValue += line + "\n";
}