[java]打包成jar之后找不到文件FileNotFoundException

jar包放在c盘命名为Test.jar,以压缩方式打开的话,可以看到文件夹A中有B.xxx(一个可以读的excel文件)[在eclipse里面运行是没有任何问题的]
但是做成jar包之后异常提示

file:\C:\Test.jar!\A\B.xxx<文件名、目录名或卷标语法不正确>
是不是这个路径语法有问题?
我是用的
getClass().getResource("/A/B.xxx");
获得的路径

第1个回答  推荐于2016-05-01
Java在WEB项目中获取文件路径 .

jsp中获得文件路径servlet中获得文件路径java中获得文件路径jsp中获得文件路径
1、根目录所对应的绝对路径:request.getRequestURI();
2、文件的绝对路径:application.getRealPath(request.getRequestURI())
3、当前web应用的绝对路径:application.getRealPath("/")
4、取得请求文件的上层目录:
newFile(application.getRealPath(request.getRequestURI())).getParent()
servlet中获得文件路径
1、根目录所对应的绝对路径:request.getServletPath()
2、文件的绝对路径:
request.getSession().getServletContext().getRealPath(request.getRequestURI())
3、当前web应用的绝对路径:servletConfig.getServletContext().getRealPath("/")
注:ServletContext对象获得几种方式:
javax.servlet.http.HttpSession.getServletContext()
javax.servlet.jsp.PageContext.getServletContext()
javax.servlet.ServletConfig.getServletContext()
java中获得文件路径
1、Thread.currentThread().getContextClassLoader().getResource("").toURI().getPath()
2、MyClass.class.getClassLoader().getResource("").toURI().getPath()
3、ClassLoader.getSystemResource("").toURI().getPath()
4、MyClass.class.getResource("").toURI().getPath()
5、MyClass.class.getResource("/").toURI().getPath()
6、newFile("/").getAbsolutePath().toURI().getPath()
7、System.getProperty("user.dir").toURI().getPath()

希望能帮到你本回答被提问者采纳
相似回答