我在zip文件中有一个zip文件。所以我需要以递归方式解压缩。输入以字节数组形式出现
zis = new ZipInputStream(new ByteArrayInputStream((byte[])byteArray));
while((entry = zis.getNextEntry()) != null)
{
processZip(entry, byteArray);
}
在processZip(entry,byteArray)中,我正在阅读单个条目。当条目值是zip文件时,我如何处理它。如何将zipentry对象转换为Zipfile或通过它进行枚举?
答案 0 :(得分:1)
您需要调整processZip()
以将ZipInputStream
作为InputStream
参数,而不是字节数组。在内部,它应该围绕ZipInputStream
构建另一个InputStream
并执行您在此处所做的事情。
NB为什么拥有字节数组?您应该直接从源读取ZipInputStream
:套接字,文件,等等。不要将文件加载到内存中。