您的位置:首页 > 编程语言 > Java开发

java 获取 jar 包内文件列表

2016-04-13 20:14 316 查看
   获取 jar 包内文件列表,使用 JarFile。下面是我的测试类:

package com.zd.test1;

import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
import java.util.Enumeration;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;

public class TestJarFile {

public static void main(String[] args) throws IOException {
File path = new File(System.getProperty("user.dir") + "/" + "zd" + "/");

File[] jarFiles =  path.listFiles(new FileFilter() {

@Override
public boolean accept(File file) {
return file.getName().toUpperCase().endsWith("JAR");
}
});

JarFile jf = null;
for(File fileTemp : jarFiles){
jf = new JarFile(fileTemp);
Enumeration<JarEntry> enume = jf.entries();
while(enume.hasMoreElements()){
JarEntry element = enume.nextElement();
String name = element.getName();
if(name.toUpperCase().endsWith(".CLASS")){
System.out.println(name);
}
}
}
}

}


输出结果如下:

org/apache/commons/logging/impl/Log4JCategoryLog.class
org/apache/commons/logging/impl/Log4JLogger.class
org/apache/commons/logging/impl/Log4jFactory.class
org/apache/commons/logging/impl/LogFactoryImpl$1.class
org/apache/commons/logging/impl/LogFactoryImpl.class
org/apache/commons/logging/impl/LogKitLogger.class
org/apache/commons/logging/impl/NoOpLog.class
org/apache/commons/logging/impl/SimpleLog$1.class
org/apache/commons/logging/impl/SimpleLog.class
org/apache/commons/logging/impl/AvalonLogger.class
org/apache/commons/logging/impl/Jdk14Logger.class
org/apache/commons/logging/Log.class
org/apache/commons/logging/LogFactory$1.class
org/apache/commons/logging/LogFactory$2.class
org/apache/commons/logging/LogFactory$3.class
org/apache/commons/logging/LogFactory.class
org/apache/commons/logging/LogConfigurationException.class
org/apache/commons/logging/LogSource.class
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  JarFile