为了账号安全,请及时绑定邮箱和手机立即绑定

JAVA实现解析zip文件以及写入相关路径下

标签:
Java


import java.io.BufferedInputStream; 

import java.io.BufferedReader; 

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.InputStream; 

import java.io.InputStreamReader; 

import java.util.zip.ZipEntry; 

import java.util.zip.ZipFile; 

import java.util.zip.ZipInputStream; 

public class Test {

  public static void main(String[] args) throws Exception {

    try {

         //读文件的路径 

        readZipFile("D:\\tupian.zip"); 

      } catch (Exception e) { 

        // TODO Auto-generated catch block 

        e.printStackTrace(); 

      } 

  }

  public static void readZipFile(String file) throws Exception {

      ZipFile zf = new ZipFile(file);

      InputStream in = new BufferedInputStream(new FileInputStream(file));

      ZipInputStream zin = new ZipInputStream(in);

      ZipEntry ze;

      while ((ze = zin.getNextEntry()) != null) {

          if (ze.isDirectory()) {


          } else {

              System.err.println("file - " + ze.getName() + " : "+ ze.getSize() + " bytes");

              InputStream inputStream = zf.getInputStream(ze);

              byte[] bytes=new byte[1024];

              int len;

              FileOutputStream fileOutputStream=null;

              try{

                  //写入的路径

                  fileOutputStream=new FileOutputStream("C:\\zwork\\"+ze.getName());

                  while((len=inputStream.read(bytes))!=-1){

                      fileOutputStream.write(bytes,0,len);

                  }

              }catch (Exception e){

                  e.printStackTrace();

              }finally {

                  if (inputStream != null) {

                      try {

                          inputStream.close();

                      } catch (IOException e) {

                          e.printStackTrace();

                      }

                  }

                  if (fileOutputStream != null) {

                      try {

                          fileOutputStream.close();

                      } catch (IOException e) {


                          e.printStackTrace();

                      }

                  }

              }


          }

      }

      zin.closeEntry();

  }


}



点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消