我有一个包含许多jar文件的大型zip文件。我想阅读jar文件的内容。
我尝试将内部jar文件读入内存,这似乎有效(见下文)。但是,我不确定jar文件的大小,并担心它们不适合内存。
是否有解决此问题的流媒体解决方案?
hello.zip
+- hello.jar
+- Hello.class
#!/usr/local/bin/python3
import os
import io
import zipfile
zip = zipfile.ZipFile('hello.zip', 'r')
for zipname in zip.namelist():
if zipname.endswith('.jar'):
print(zipname)
jarname = zip.read(zipname)
memfile = io.BytesIO(jarname)
jar = zipfile.ZipFile(memfile)
for f in jar.namelist():
print(f)
hello.jar
META-INF/
META-INF/MANIFEST.MF
Hello.class