A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wenhb 中级黑马   /  2017-12-8 17:55  /  625 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

不管你是新手还是老鸟,在程序中读取资源文件总会遇到一些找不到文件的问题,这与Java底层的实现有关,不能算bug,只要方法得当,问题还是可以解决的。


先看一段代码

代码正常运行

换到控制台运行

找不到文件了,一样的代码放在不同的地方就有不一样的效果
这是通过IDEA开发工具运行的,结果没问题,如果换成控制台执行,那么使用了项目相对路径的读取方式会失败,原因是,此时已经脱离了项目的开发环境,-----这个问题常常困扰着一些菜鸟,代码在开发工具好好的,发布后执行就不行了

解决方法就是使用classpath 绝对路径
Test.class.getResource("/").getFile();

总结
使用工程相对路径是靠不住的。
使用CLASSPATH路径是可靠的。



0 个回复

您需要登录后才可以回帖 登录 | 加入黑马