相关疑难解决方法(0)

如何列出JAR文件中的文件?

我有这个代码从目录中读取所有文件.

    File textFolder = new File("text_directory");

    File [] texFiles = textFolder.listFiles( new FileFilter() {
           public boolean accept( File file ) {
               return file.getName().endsWith(".txt");
           }
    });
Run Code Online (Sandbox Code Playgroud)

它很棒.它使用目录"text_directory"中以".txt"结尾的所有文件填充数组.

如何 JAR文件中以类似的方式读取目录的内容?

所以我真正想做的是,列出我的JAR文件中的所有图像,所以我可以加载它们:

ImageIO.read(this.getClass().getResource("CompanyLogo.png"));
Run Code Online (Sandbox Code Playgroud)

(那个是有效的,因为"CompanyLogo"是"硬编码的",但JAR文件中的图像数量可以是10到200个可变长度.)

编辑

所以我想我的主要问题是:如何知道我的主类所在的JAR文件名称

当然,我可以使用它来阅读它java.util.Zip.

我的结构是这样的:

他们就像:

my.jar!/Main.class
my.jar!/Aux.class
my.jar!/Other.class
my.jar!/images/image01.png
my.jar!/images/image02a.png
my.jar!/images/imwge034.png
my.jar!/images/imagAe01q.png
my.jar!/META-INF/manifest 
Run Code Online (Sandbox Code Playgroud)

现在我可以使用以下命令加载例如"images/image01.png":

    ImageIO.read(this.getClass().getResource("images/image01.png));
Run Code Online (Sandbox Code Playgroud)

但只是因为我知道文件名,其余的我必须动态加载它们.

java jar file getresource java-io

107
推荐指数
9
解决办法
13万
查看次数

如何编写可以提取JAR文件并将其数据存储在指定目录(位置)的Java程序?

我创建了一个JAR文件.现在,我创建了另一个Java程序.我想在其他目录中解压缩该JAR文件,这意味着我想做一些像解压缩这样的事情.

如果我运行jar -xf filename.jar这会导致一些错误:

Exception in thread "main" java.io.IOException: Cannot run program "jar": 
java.io.IOException: error=2, No such file or directory
     at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
     at java.lang.Runtime.exec(Runtime.java:593)`
Run Code Online (Sandbox Code Playgroud)

java jar

30
推荐指数
4
解决办法
7万
查看次数

从JAR中提取并加载DLL

我的Java应用程序使用DL​​L库.如何从JAR文件中获取它?

DLL位于项目的sources文件夹中.我必须将它包含在我的JAR中,在运行时提取它(在jar的同一目录中)并加载它.

java dll java-native-interface jar

15
推荐指数
1
解决办法
2万
查看次数

如何获取inputStream使用的文件名?

我有一个方法接受一个I​​nputStream作为参数.如何找到传递的处理程序正在处理的文件?

例如:

public performSomething(InputStream inputStream) {
    System.out.println(FILENAME);
}
Run Code Online (Sandbox Code Playgroud)

应该替换FILENAME,以便显示处理程序打开的文件的名称.

java

2
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×4

jar ×3

dll ×1

file ×1

getresource ×1

java-io ×1

java-native-interface ×1