繁体   English   中英

如何从罐子中获取资源(文件夹)?

[英]How to get a resource(folder) from a jar?

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

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 inStream = CompilerUtils.class.getClassLoader().getResourceAsStream(filePath)

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM