获取压缩文件的输入流?

Posted

技术标签:

【中文标题】获取压缩文件的输入流?【英文标题】:get input stream of zipped file? 【发布时间】:2012-09-10 09:19:29 【问题描述】:

是否可以从压缩文件中获取文件作为 InputStream?我在这里只知道这个:How to extract a single file from a remote archive file?,它只给了我文件的字节。

那么是否有任何功能可以使用这样的方法:InputStream getFile(String path, File zipFile) 其中path 是压缩文件内的路径?

【问题讨论】:

【参考方案1】:

试试这个:

ZipFile zf = new ZipFile(file);
try 
  InputStream in = zf.getInputStream(zf.getEntry("file.txt"));
  // ... read from 'in' as normal
 finally 
  zf.close();

更多信息请参考this tutorial。

【讨论】:

【参考方案2】:

您可以使用ByteArrayInputStream,它将一个字节数组作为构造函数中的输入。

【讨论】:

以上是关于获取压缩文件的输入流?的主要内容,如果未能解决你的问题,请参考以下文章

求解 java 对压缩文件zip 加密 !

java Zip压缩输入输出流问题

使用文件流压缩文件并上传到 Azure Blob 存储

MVC实现实现文件流打包成压缩包

压缩多个excel成一个压缩包,浏览器下载

GzipStream的简单使用压缩和解压