首页 / JAVA / Java中获取资源文件的方法总结
Java中获取资源文件的方法总结
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java中获取资源文件的方法总结,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2401字,纯文字阅读大概需要4分钟。
内容图文
这里总结3中方法获取资源文件的
- ServletContext
- Class
- ClassLoader
文件的位置
1. ServletContext
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter pw = response.getWriter(); ServletContext context = this.getServletContext(); /** * 获取不同路径下的资源文件 * servletContext是相对于项目的根目录的,这里为WebContent */ InputStream inputA = context.getResourceAsStream("/a.txt"); InputStream inputB = context.getResourceAsStream("/WEB-INF/classes/cn/zydev/b.txt"); InputStream inputC = context.getResourceAsStream("/WEB-INF/classes/c.txt"); /** * 获取真实的磁盘路径 */ String realPath = context.getRealPath("/WEB-INF/classes/c.txt"); /** * 获取指定目录下的文件(包括目录,深度为1级) */ Set<String> rsc = context.getResourcePaths("/WEB-INF"); String a = IOUtils.toString(inputA); String b = IOUtils.toString(inputB); String c = IOUtils.toString(inputC); pw.print(a+"<br/>"); pw.print(b+"<br/>"); pw.print(c+"<br/>"); pw.print(realPath+"<br/>"); pw.println(rsc); }
结果显示:
2. ClassLoader
使用ClassLoader是相对于classes的
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter pw = response.getWriter(); /** * ClassLoader是相对于classes参照的 * 第一个斜杠可以不写,也可以写成./(熟悉Linux的应该很清楚) */ ClassLoader cl = this.getClass().getClassLoader(); InputStream inputA = cl.getResourceAsStream("/../../a.txt"); InputStream inputB = cl.getResourceAsStream("/cn/zydev/b.txt"); InputStream inputC = cl.getResourceAsStream("/c.txt"); String a = IOUtils.toString(inputA); String b = IOUtils.toString(inputB); String c = IOUtils.toString(inputC); pw.print(a+"<br/>"); pw.print(b+"<br/>"); pw.print(c+"<br/>"); }
得到结果:
3. class
路径前斜杠表示相对于当前的class,不加斜杠相对于classes
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter pw = response.getWriter(); Class cs = this.getClass(); //不加斜杠表示相对于class(CServlet) InputStream inputA = cs.getResourceAsStream("../../../../a.txt"); InputStream inputB = cs.getResourceAsStream("b.txt"); //加斜杠,相对于classes InputStream inputC = cs.getResourceAsStream("/c.txt"); String a = IOUtils.toString(inputA); String b = IOUtils.toString(inputB); String c = IOUtils.toString(inputC); pw.print(a+"<br/>"); pw.print(b+"<br/>"); pw.print(c+"<br/>"); }
得到结果:
原文:http://www.cnblogs.com/zydev/p/6935715.html
内容总结
以上是互联网集市为您收集整理的Java中获取资源文件的方法总结全部内容,希望文章能够帮你解决Java中获取资源文件的方法总结所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。