使用 ZIpFile 解压缩文件

发布于 2024-11-06 22:36:11 字数 764 浏览 0 评论 0原文

我正在使用以下代码来解压缩文件。

我捕获此异常“unZip()=java.io.IOException”,但文件已解压缩并创建!

有什么想法吗?

谢谢。

public boolean unZipPage(int page)
 {
  try 

  {

   File f=new File(zippagename);

   FileOutputStream out = new FileOutputStream(f);

   ZipEntry fh=fhs.get(page);

   InputStream is = zif.getInputStream(fh);

   byte buf[] = new byte[1024];

   int numread;

   while((numread = is.read(buf,0,1024))>=0)

   {

    out.write(buf, 0, numread);

   } 

   is.close();

   out.flush();

   out.close();

  }

  return true;

 } 

 catch (FileNotFoundException e) 

 {

  Log.v("comicsZip", "unZip()=" + e);       

 }

 catch (IOException e) 

 { 

  Log.v("comicsZip", "unZip()=" + e + " Page="+page);

 }

 return false;

 }

I'm using the following code to unzip files.

I'm catching this exception "unZip()=java.io.IOException", but the file is decompressed and created!

Any ideas?

Thanks.

public boolean unZipPage(int page)
 {
  try 

  {

   File f=new File(zippagename);

   FileOutputStream out = new FileOutputStream(f);

   ZipEntry fh=fhs.get(page);

   InputStream is = zif.getInputStream(fh);

   byte buf[] = new byte[1024];

   int numread;

   while((numread = is.read(buf,0,1024))>=0)

   {

    out.write(buf, 0, numread);

   } 

   is.close();

   out.flush();

   out.close();

  }

  return true;

 } 

 catch (FileNotFoundException e) 

 {

  Log.v("comicsZip", "unZip()=" + e);       

 }

 catch (IOException e) 

 { 

  Log.v("comicsZip", "unZip()=" + e + " Page="+page);

 }

 return false;

 }

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

情泪▽动烟 2024-11-13 22:36:11

问题可能是关闭输入。它应该只在整个 ZipInputFile 的最后完成一次(我假设这就是“zif”),而不是在处理每个 ZipEntry 之后。

The problem might be closing the input. It should only be done once at the end for the entire ZipInputFile (I assume that's what 'zif' is) and not after each ZipEntry is processed.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文