JAR文件无法识别我在JAR中读取的文件的更新

时间:2019-02-09 01:26:02

标签: java netbeans jar inputstream

我正在使用Netbeans,并且在我的程序中正在读取文件。当我运行程序时,它会正确读取文件。当我构建程序时,JAR也可以正常工作。但是,当我在构建目录中更改要读取的文件时,JAR不会相应更新。为什么呢?有解决方案吗?

下面的代码显示了如何在程序中读取文件。预先感谢。

InputStream in = NewJFrame.class.getResourceAsStream("/holidays.txt"); 
BufferedReader readHolidays = new BufferedReader(new InputStreamReader(in));
String line;
line = readHolidays.readLine();

while(line != null) {
    //read into hashmaps
    //...
    line = readHolidays.readLine();
}
readHolidays.close();

1 个答案:

答案 0 :(得分:0)

没关系,我明白了;)如果其他人需要这样做:基本上,每次我运行该程序时,我都会找到jar文件的文件路径,然后从那里读取文本文档。

File jarFile = new File(this.getClass().getProtectionDomain().getCodeSource().getLocation().toURI()); 

FileInputStream is = new FileInputStream(jarFile.getParent().toString() + "/file.txt"); BufferedReader readFile= new BufferedReader(new InputStreamReader(is));