【发布时间】:2016-12-12 20:08:19
【问题描述】:
您好,感谢您抽出宝贵时间来研究这个问题。
我无法访问与我的 src 文件夹平行的文件夹中的文本文件(结构见下文)。
我找到的最接近解释的是:https://www.cis.upenn.edu/~matuszek/cit597-2006/Pages/finding-files.html 并且我遇到过许多类似的问题,但不幸的是,我无法从中推断出这个问题的答案。
我知道我可以使用绝对路径,但我想确保该软件可以在其他人的计算机上运行,所以这是不行的。因此,我试图让它与相对路径一起工作。
作为奖励,这里建议:https://coderanch.com/t/464197/java/java/Reading-files-directory-giving-relative 为了让这段代码在 JAR 文件中工作,我必须使用 getResourceAsStream()。有人可以建议吗?
我正在尝试从RecipeReader.java 中访问Recipes.txt,这是我目前的代码:
Class thisClass = this.getClass();
ClassLoader loader = thisClass.getClassLoader();
URL recipeFileURL = loader.getResource("Recipes.txt");
String path = recipeFileURL.getPath();
path.replaceAll("%20", " ");
BufferedReader input = new BufferedReader(new FileReader(path));
类似地写入同一个文件:
Class thisClass = this.getClass();
ClassLoader loader = thisClass.getClassLoader();
URL recipeFileURL = loader.getResource("Recipes.txt");
String path = recipeFileURL.getPath();
path.replaceAll("%20", " ");
BufferedWriter output = new BufferedWriter(new FileWriter(path));
提前感谢您的帮助!
罗宾
【问题讨论】:
标签: java text-files javafx-8 classloader relative-path