美文网首页
读取jar包内的文件

读取jar包内的文件

作者: fufufufuli | 来源:发表于2019-08-02 11:52 被阅读0次

    背景:封装了一个工具包,在工具包内使用File方式读取文件内容

     {
     URL resource = GB2260.class.getResource("/gb2260/data.json");
       String json = FileUtils.readFileToString(new File(resource.getPath()));
    }
    

    在当前项目中可执行
    当作为其他项目依赖使用时读取该资源文件则会报错
    如图所示


    image.png

    所以应当改用流的方式读取文件内容

     {
       InputStream is = GB2260.class.getResourceAsStream("/gb2260/data.json");
       String json = inputStream2String(is);
    }
    
     private static String inputStream2String(InputStream in) throws IOException {
            StringBuffer out = new StringBuffer();
            byte[] b = new byte[4096];
            for (int n; (n = in.read(b)) != -1; ) {
                out.append(new String(b, 0, n));
            }
            return out.toString();
        }
    

    相关文章

      网友评论

          本文标题:读取jar包内的文件

          本文链接:https://www.haomeiwen.com/subject/irakdctx.html