找不到文件例外 - 看不到问题

时间:2013-09-14 05:39:57

标签: java java-io filenotfoundexception

我尝试使用整个路径直接链接,但也没有解决它。

package eliza;

import java.io.*;

public class Eliza {

public static void main(String[] args) throws IOException {
    String inputDatabase = "src/eliza/inputDataBase.txt";
    String outputDatabase = "src/eliza/outputDataBase.txt";
    Reader database = new Reader();

    String[][] inputDB = database.Reader(inputDatabase);
    String[][] outputDB = database.Reader(outputDatabase);

}
}

以下是读者类:

package eliza;

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

public class Reader {

public String[][] Reader(String name) throws IOException {
    int length = 0;
    String sizeLine;

    FileReader sizeReader = new FileReader(name);
    BufferedReader sizeBuffer = new BufferedReader(sizeReader);

    while((sizeLine = sizeBuffer.readLine()) != null) {
        length++;
    }

    String[][] database = new String[length][1];

    return (database);
}
}

这是我的目录的照片。我甚至将这些文本文件放在“eliza”根文件夹中:here

有什么想法吗?

4 个答案:

答案 0 :(得分:2)

由于您使用的是IDE,因此需要提供完整的规范路径。它应该是

String inputDatabase = "C:\\Users\\Tommy\\Desktop\\Eliza\\src\\eliza\\inputDataBase.txt";
String outputDatabase = "C:\\Users\\Tommy\\Desktop\\Eliza\\src\\eliza\\outputDataBase.txt";

IDE可能正在执行其bin文件夹中的字节码,但找不到相对引用。

答案 1 :(得分:0)

给出确切的路径

String inputDatabase = "c:/java/src/eliza/inputDataBase.txt";

答案 2 :(得分:0)

您没有给出正确的路径,请重新检查

尝试

{BASE_PATH}+ "Eliza/src/inputDataBase.txt"

答案 3 :(得分:0)

源目录树通常不会在执行期间出现,因此运行时所需的文件不应放在那里......除非您打算将它们用作资源,在这种情况下,它们的路径名是相对的包根,并不以'src'开头,数据由getResourceXXX()方法访问,而不是通过FileInputStream访问。