使用NetBeans时找到文件,使用终端找不到

时间:2016-09-14 15:51:59

标签: java netbeans filereader filenotfoundexception

所以我必须使用终端运行程序。但是,当我这样做时,它告诉我,我尝试使用的文件无法找到。当我使用NetBeans运行我的程序时,没有问题。 这是我的代码

    File file = new File("src/level/Level2.txt");
    FileReader fileReader = new FileReader(file);
    BufferedReader reader = new BufferedReader(fileReader);

当它工作时,程序应该打开一个窗口,其中包含文件中的级别。 在尝试" level / Level2.txt"对于文件名,它会打开一个空窗口。 希望有人可以帮助我。

修改 我发现了什么问题。我的程序无法找到我想要显示的图像。

1 个答案:

答案 0 :(得分:-1)

为了减少神秘感,你可以尝试使用绝对路径而不是相对路径。

String currentDir = Paths.get(".").toAbsolutePath().normalize().toString();
System.out.println("currentDir = " + currentDir);

例如,在我的系统上,此输出此目录名称:

currentDir = /Users/harry/Projects/proj3

从命令行看到的目录的绝对路径将取决于您从控制台运行Java的位置。(假设您的Java应用程序没有尝试更改当前工作目录。)

从这里借来的建议:

Getting the Current Working Directory in Java

我建议这可以帮助解决您的特定问题,作为在Java应用程序中使用路径的一般建议。相对路径更好......当你在没有IDE的情况下运行程序时,很好地弄清楚你的程序如何访问目录。