ClassLoader.getResource()出现异常

  1. 通过获取绝对路径的方法, properties.load()方法报文件找不到的异常, 使用代码如下:

     URL resource = classLoader.getResource("jdbc.properties");
     String path = resource.getPath();
     properties.load(new FileReader(path));
    
    • 文件路径为: /Users/MyMac/Desktop/Java/02.%20JDBC/day01JDBC/out/production/day01JDBC/jdbc.properties
    • 注意路径中的%20, 该字符代表一个空格符, 当FileReader加载这个路径的时候就会出现异常
  2. 解决方案: 将文件获取的方式改为获取InputStream

     InputStream inputStream = classLoader.getResourceAsStream("jdbc.properties");
     properties.load(inputStream);
    
  3. 或者手动修改读取到的url

     String path = JsoupDemo1.class.getClassLoader().getResource("schema/student.xml").getPath();
     path = path.replace("%20", " ");
    
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容