• java 读取Zip文件进行写入


    直接读取ZIp文件读取写入到别的文件中。

    package jp.co.misumi.mdm.batch;
    
    import java.io.BufferedReader;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.zip.GZIPInputStream;
    
    public class MainSample {
    
      public static void main(String[] args) {
        long start = System.currentTimeMillis();
        FileInputStream fis = null;
        FileOutputStream fos = null;
        try {
          fis = new FileInputStream("D:/Misumi MDM/WorkSpace/mdmtsv/update_log_17631.tsv.gz");
          GZIPInputStream gzis = new GZIPInputStream(fis);
          InputStreamReader reader = new InputStreamReader(gzis);
          BufferedReader in = new BufferedReader(reader);
          
          fos = new FileOutputStream("D:/Misumi MDM/WorkSpace/mdmtsv/update_log_17631.tsv");
    
          String line = null;
          while ((line = in.readLine()) != null) {
            // System.out.println(readed);
            String[] datas = line.split("	", -1);
            if("m_product".equals(datas[2].toLowerCase())) {
              fos.write(line.getBytes());
              fos.write("
    ".getBytes());
            }
          }
          
          in.close();
        } catch (FileNotFoundException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
        } catch (IOException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
        } finally {
          if (fis != null) {
            try {
              fis.close();
            } catch (IOException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
            }
          }
          if (fos != null) {
            try {
              fos.close();
            } catch (IOException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
            }
          }
          long end = System.currentTimeMillis();
          System.out.println("Total run Time is :" + (end - start) + "ms");
        }
      }
    
    }
  • 相关阅读:
    从零开始学VUE之组件化开发(组件数据的存放)
    从零开始学VUE之组件化开发(组件分离写法)
    从零开始学VUE之组件化开发(语法糖优化组件注册)
    进程与线程的一个简单解释
    Crontab爬虫定时执行
    接口分类复习
    最长公共子串
    最长公共子序列(力扣第1143题)
    Reduce端分组排序源码分析
    Job提交流程源码和切片源码详解
  • 原文地址:https://www.cnblogs.com/sunxun/p/6700180.html
Copyright © 2020-2023  润新知