基本上我要做的是解析一个目录的所有文件,并将所有的childen添加到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)
但它似乎不适用于文件。我正在寻找适合目录的替代方案。
答案 0 :(得分:0)
获取网址url.getFile()
的字符串表示形式file:/C:/xxx/yyy/x.jar!/resources
从中提取路径:C:/xxx/yyy/x.jar.
使用Jar File类读取文件夹