首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

IntelliJ IDEA 的working directory有关问题

2014-01-01 
IntelliJ IDEA 的working directory问题BufferedReader reader new BufferedReader(new FileReader(inp

IntelliJ IDEA 的working directory问题

BufferedReader reader = new BufferedReader(new FileReader("input.txt"));

上面这行代码在IntelliJ IDEA中会报FileNotFoundException。
我的input.txt与该java类在同一目录下,而且我也检查了IntelliJ IDEA的输出目录,即out/production/{Project}/{Module},input.txt与编译好的class文件也都存在,且在同一目录。
请教为什么class和input.txt明明在同一目录下,还是会报FileNotExcption异常?

后来经过google,发现edit configurations里面有个working directory,这个值是{Project}目录,即项目的根路径,把input.txt放在这里,则运行成功。
或者修改working directory,指向输出目录(见上文),也可以运行成功。
难道每个module的working directory都要手动修改到输出目录吗?还是我没有设置好?
[解决办法]
和.class 放到一起的使用 getResourceAsStream 读
[解决办法]
引用:
难道每个module的working directory都要手动修改到输出目录吗?还是我没有设置好?


是的,——但是不建议你这样做。

从项目结构来说,input.txt 是资源文件而不是Java的类,资源文件最好是用 working directory 的相关路径,或者用主流操作系统都支持的用户路径。

如果非要把它跟 Java 类一起打入jar包,那读取的时候可以用 class path,比如 

InputStream in = XXX.class.getResourceAsStream("input.txt");

热点排行