我需要从/test/a.xml
文件中读取test.jar
的内容(它们都是变量,当然不是常量)。最简单的方法是什么?
File file = new File("test.jar");
String path = "/test/a.xml";
String content = // ... how?
答案 0 :(得分:5)
这个怎么样:
JarFile file = new JarFile(new File("test.jar"));
JarEntry entry = file.getJarEntry("/test/a.xml");
String content = IOUtils.toString(file.getInputStream(entry));
答案 1 :(得分:2)
使用ZipInputStream
并搜索您要求的文件。
FileInputStream fis = new FileInputStream(args[0]);
ZipInputStream zis = new ZipInputStream(fis);
ZipEntry ze;
while ((ze = zis.getNextEntry()) != null)
if(ze.getName().equals("/test/a.xml")
{
//use zis to read the file's content
}