在创建jar期间无法在java eclipse中添加文本文件

时间:2014-04-29 14:41:39

标签: java eclipse

我在eclipse中创建了一个java项目,并添加了一些文本文件,如下所示

FileReader fin=null;
BufferedReader bin=null;
fin=new FileReader("src/main/resources/League.txt");
bin=new BufferedReader(fin);

但是在运行jar文件后创建可运行的jar或只是简单的jar后,它显示没有找到文本文件或找不到路径。但是我已经在项目的main.resource中添加了文本文件。如何处理?

3 个答案:

答案 0 :(得分:0)

确保最新的Java版本目录src \ main \ resources \ League.txt中有一个文件。例如,对于Windows,例如C:\ Program Files \ Java \ jdk1.7.0_25 \ src \ main \ resources \ League.txt。 您需要提供正斜杠,而不是返回斜杠。此外,这应该是代码:

FileReader fin=null;
BufferedReader bin=null;
fin=new FileReader("src\\main\\resources\\League.txt"); // Because of Unicode restrictions. 
bin=new BufferedReader(fin);

也许您也会检查一下: How to get a path to a resource in a Java JAR file

答案 1 :(得分:0)

使用URLClassLoader.getSystemResourceAsStream,这适用于jar和eclipse ......

答案 2 :(得分:0)

试试这个。即使文件在src / resources中,您也不必在路径中说src文件夹。

BufferedReader br = null;

try {

    String sCurrentLine;

    URL url = ClassLoader.getSystemResource("resources/League.txt");
    br = new BufferedReader(new InputStreamReader(url.openStream()));

    while ((sCurrentLine = br.readLine()) != null) {
        System.out.println(sCurrentLine);
    }

} catch (IOException e) {
    e.printStackTrace();
} finally {
    try {
        if (br != null)br.close();
    } catch (IOException ex) {
        ex.printStackTrace();
    }
}