【问题标题】:How to get a resource(folder) from a jar?如何从 jar 中获取资源(文件夹)?
【发布时间】:2015-01-12 01:14:13
【问题描述】:

基本上我要做的是解析目录的所有文件并将所有子项添加到 List 。 问题是我没有主要功能,我只运行一个罐子。所以我不能这样做:

URL url = MyClass.class.getResource("resources/");
if (url == null) {
     // error - missing folder
} else {
    File dir = new File(url.toURI()); //throws error when running the jar
    for (File nextFile : dir.listFiles()) {
        // Do something with nextFile
    }
}

因为它抛出 IllegalArgument 异常。我也尝试过使用以下方法获取 InputStream:

InputStream inStream = CompilerUtils.class.getClassLoader().getResourceAsStream(filePath)

但它似乎不适用于文件。我正在寻找一种适用于目录的替代方法。

【问题讨论】:

    标签: java jar resources directory


    【解决方案1】:

    获取 url url.getFile() 的字符串表示形式,它看起来像 file:/C:/xxx/yyy/x.jar!/resources 从中提取路径:C:/xxx/yyy/x.jar. 使用 JarFile 类读取文件夹

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-08
      • 1970-01-01
      • 2021-12-21
      • 2016-08-06
      • 2017-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多