java.io.FileNotFoundException

yushui1985 2010-11-03 11:31:35
代码
File file = new File("config/etl_config.properties");
......

config跟src同级目录
我在main函数中测试可以读到文件内容,但是放到web里面,启动tomcat就报文件找不到异常,真是奇怪的问题?
...全文
164 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
tanmin1577 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 leehuat 的回复:]
Java code

File file = new File("http://127.0.0.1:8080/项目/web-info/config/etl_config.properties");
[/Quote]

能这样取?
qvr32 2010-11-05
  • 打赏
  • 举报
回复
使用决对路径和相对路径的问题
blazingfire 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用楼主 yushui1985 的回复:]
代码
Java code
File file = new File("config/etl_config.properties");
......


config跟src同级目录
我在main函数中测试可以读到文件内容,但是放到web里面,启动tomcat就报文件找不到异常,真是奇怪的问题?
[/Quote]
config不要放在src同级,放在src下面,这样编译的时候就会编译到classes下。这样你就可以用
InputStream ins = new Object() {}.getClass().
getClassLoader().getSystemResourceAsStream("config/etl_config.properties");
取到流
magong 2010-11-05
  • 打赏
  • 举报
回复
检查etl_config.properties文件有没有分发,分发到哪个目录下了。
还有最好不要开文件,
读属性文件用getResourceAsStream("classpath路径")这种方式好了。
leehuat 2010-11-04
  • 打赏
  • 举报
回复

File file = new File("http://127.0.0.1:8080/项目/web-info/config/etl_config.properties");

龙心 2010-11-04
  • 打赏
  • 举报
回复
如果你的文件放在tomcat工程里的话,你可以在servlet启动的时候获取tomcat路径
public class InitServlet extends HttpServlet {

private void getInfoFilePath() {
String softPath = getServletContext().getRealPath("\\");
}
}
上面只是思路,然后你再将文件名加上去拼成完整的路径。
学习Java中 2010-11-04
  • 打赏
  • 举报
回复
String path = XXXX.class.getResource("//").getPath(); // 获得当前类所在的路径
qianyecq 2010-11-04
  • 打赏
  • 举报
回复
("../config/etl_config.properties")
xiaochengfu1 2010-11-04
  • 打赏
  • 举报
回复
你到tomcat里面看一下路径,再写
coolbamboo2008 2010-11-04
  • 打赏
  • 举报
回复
("/config/etl_config.properties")
yushui1985 2010-11-03
  • 打赏
  • 举报
回复
那要怎么改呢?
houjin_cn 2010-11-03
  • 打赏
  • 举报
回复
这是因为在tomcat中, 当前目录已经不是那里了, 而是 tomcat6.exe 所在的目录

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧