java.io.FileNotFoundException:in.txt,(系统找不到指定的文件)

java.io.FileNotFoundException:in.txt,(系统找不到指定的文件),java,Java,我得到以下错误 java.io.FileNotFoundException: in.txt, (The system cannot find the file specified) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(Unknown Source) at java.io.FileInputStream.<init>(Unkn

我得到以下错误

java.io.FileNotFoundException: in.txt, (The system cannot find the file specified)
    at java.io.FileInputStream.open(Native Method)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileInputStream.<init>(Unknown Source)
    at java.io.FileReader.<init>(Unknown Source)
    at FileTest.main(FileTest.java:50)

将其放在项目目录中,如果不起作用,bin文件夹将打开“调试配置”,并在“参数”选项卡下设置工作目录。相对路径将相对于工作目录。

给出错误消息,我猜Java正在.txt中查找文件名
,后面带有逗号。

默认情况下,Eclipse将工作目录设置为项目文件夹。如果对设置进行了更改,您仍然可以通过以下简单代码行找到工作目录:

System.out.println(new java.io.File("").getAbsolutePath());

将文本文件放在打印的文件夹中,您应该会没事。

我获取了您的代码,并使用以下命令行参数执行它:

in.txt out.txt

它工作起来一点问题都没有。检查您的命令行。

我在eclipse中创建了一个新项目
Learning
,并将
放入.txt
文件中的源目录中。我使用示例java文件进行了测试

public static void main(String[] args) {
    File f = new File("a.txt");
    System.out.println(f.getAbsolutePath());
}
输出:

/home/bharathi/workspace/Learning/a.txt

它在项目根目录中查找。您可以将.txt放入项目的根目录中,或给出源目录的路径。

可能存在两个问题:

  • 在控制台中,错误显示为“,”检查-->
    java.io.FileNotFoundException:in.txt,
    所以JVM可能会查找带有“,”的文件名

  • 第二种情况可能是,您在.txt文件中的权限不正确 地方检查它是否是项目的根。还是主要的 路径


  • 这将解决这些类型的问题。

    您需要将其放在src目录之外的项目目录IIRC中。@nhahdh是的,我已经这样做了,但还是很幸运……您的Java程序是如何运行的?我看到文件名是通过args param接收的。@HernanVelasquez通过单击绿色的“播放”按钮来运行它(但是我已经将参数指定为in.txt和out.txt以及c:\user\workspace\project\bin\in.txt您不应该这样做。参数之间用空格分隔。+1鹰眼…检查一下。但是您有另一个问题。您的感叹号键似乎已断开。所以参数应该用空格分隔,而不是逗号?是的,这是我们正在使用的命令行。)就像在命令提示符下输入一样。唯一需要(并且允许)的分隔符是空格。
    /home/bharathi/workspace/Learning/a.txt