我实际上在命令行和NetBeans中都编译了相同的Java文件,但是得到了不同的结果。这令人发狂和混乱。代码本身很简单,并且在命令行中是正确的。我在NetBeans中收到“错误”。据我所知,这应该没有变化...

import java.io.*;
public class A3

{
    public static void main(String[] args)
    {
        BufferedReader fileReader = null;

        try
        {
            fileReader = new BufferedReader(new FileReader("input.txt"));
            String aLine = fileReader.readLine();
            String myTokens[] = aLine.split(" ");

            System.out.println("Token 1 = " + myTokens[0]);
            System.out.println("Token 2 = " + myTokens[1]);

            fileReader.close();
        }
        catch(IOException anException)
        {
            System.out.println("Error");
        }
    }
}


解决了!我当时想得太多了。命令行在与.java相同的目录中查找.txt文件。这是合乎逻辑的。 NetBeans在根目录中查找。是的。

最佳答案

错误发生在行(您可以使用调试器):

fileReader = new BufferedReader(new FileReader("input.txt"));


您可以看一下:
Where does java look for files?

07-28 01:39
查看更多