• 读取工程中的配置文件


    1. 读取web工程下的资源文件 

    方式一 获得绝对路径

    String realpath = ServletContext.getRealPath("相对web应用的路径") ; 

    方式二 获得与文件相关联的流 (2.1与2.2是一样的)

    2.1 InputStream in = ServletContext.getResourceAsStream("WEB-INF/classes/config.properties") ;

    2.2 URL url = ServletContext.getResource("WEB-INF/classes/config.properties") ;

    InputStream in = url.openStream();

    2. 读取java工程下的文件

     

    图示 

    // 不能相对虚拟机目录 不能用绝对路径

    // 使用类加载器的方式读

    ClassLoader classLoader = Demo.class.getClassLoader(); 

    // 获得流 

    InputStream in = classLoader.getResourceAsStream("a.txt") ;

    // 获得绝对路径 

    URL url = classLoader.getResource("a.txt") ;

    类加载的方式:加载到内存之后进行读写

    1. 不能读 类路径以外 的 文件

    2. 不能读 较大 的 文件

    3. 不能读 硬盘资源文件 的 修改

    补充一点:(注意区分)

    System.out.println(InputTest.class.getResource("")); 

    这种方式得到的路径是类所在的url路径 

    System.out.println(InputTest.class.getResource("/")); 

    这种方式得到的路径是类路径的url路径 

  • 相关阅读:
    基本计算器 II
    查看JVM使用的什么垃圾收集器
    java nio 例子
    获取jvm加载的类
    对上传的二进制视频文件进行第一帧截取
    conda与pip
    微信聊天记录导出与分析
    k8s creationTimestamp 参数
    adb logcat使用及Debug技巧
    聊聊HDR
  • 原文地址:https://www.cnblogs.com/Knuth/p/2481449.html
Copyright © 2020-2023  润新知