zoukankan      html  css  js  c++  java
  • 获取类路径下的资源(文件)

      在MyEclipse或者Eclipse中在src下创建的.java文件其他文件会在WebRoot/WEB-INF/classes目录下存在(.class文件其他原封不动的文件

    即在类路径下创建东西就是在src下创建。

    获取类路径下资源

    获取类路径资源,类路径对一个JavaWeb项目而言,就是/WEB-INF/classes和//WEB-INF/lib每个jar包!

    ClassLoader:当a.txt在src下,即类路径下

    1)用的是ClassLoader

    //当a.txt在src下,即类路径下
    public class CServlet extends HttpServlet{
     public void doGet extends(HttpServletRequest request,HttpServletResponse response)throws ServletException, IOException{
    
       /*
             * 1.得到ClassLoader
             * >先得到Class,再得到ClassLoader
             * 2.调用其getResourceAsStream(),得到一个InputStream
             * */
            //    相对于/classes
    //        ClassLoader classLoader = this.getClass().getClassLoader();
    //        InputStream in = classLoader.getResourceAsStream("a.txt");
          /*byte[] b=new byte[100];
            
            int n=0;
            while((n=in.read(b))!=-1){//一次判断是否为负数
                //把字节转换成String
                String str = new String(b,0,n);
                System.out.println(str);//一次输出
            }
            in.close();//关闭流
            */    
    
        //用一个工具包comment-io里面的IOUtils.toString(in)
    //        String str = IOUtils.toString(in);//读取数据流返回字符串
    //        System.out.println(str);
       
     }
    
    }

    2)使用Class

    1 //简写
    2 doGet(){
    3  //相对于当前.class文件所在目录!
    4         Class c=this.getClass();
    5         InputStream in = c.getResourceAsStream("../../a.txt");//路径的使用
    6         String str = IOUtils.toString(in);
    7         System.out.println(str);
    8 
    9 }

    弄清路径的关系

    Class:

    //相对于当前.class文件所在目录!
    用的时候注意路径
  • 相关阅读:
    golang 内存模型
    go-设计思想
    扁平化团队的实质
    技术团队的管理体系
    技术团队的目标管理
    从0到1打造直播 App
    管理你的项目
    JavaEE开发基础
    Java调优知识汇总
    从技术走向管理读书笔记
  • 原文地址:https://www.cnblogs.com/xjs1874704478/p/10771169.html
Copyright © 2011-2022 走看看