想象一下这种情况:我有一个ZIP档案,只有一个条目。我事先知道参赛作品的名字。
如何在不必首先读取整个ZIP归档的情况下扩展此条目?
详细信息:ZIP档案的TOC附加在ZIP档案的末尾。因此,通常情况下,在读取整个档案之前,您无法开始读取条目。像tar
或gzip
这样的其他归档器先给我头部,然后给我入口数据。
在我的情况下,归档只是一个文件,我知道文件名(content.xml
,没有路径)。
虽然规范并不能真正保证它能工作,但在您的情况下,它应该只搜索第一个条目的开头。你可以对它进行解压缩,然后当你到达最后并解压缩目录时,验证你是否真的得到了你想要的数据。
我不知道是否有图书馆支持这一点,鉴于它没有得到官方支持,我预计不会。因此,您必须拆开一些阅读器(例如,zlib中捆绑的minizip应该相当简单),然后自己实现。