在 java 中将 csv 文件写入 gzip

Writing csv file to gzip in java

如何在 java 中将 csv 文件写入 gzip。在写入时,我的 csv 类型正在更改为文件类型。我想要它是.csv??? 这是我使用的代码...

public class zipWrite extends commonParts{

    public static void zip() throws Exception{

        zipWriter=  new FileOutputStream("C:\Users\myzip.gz");
        outputStream = new GZIPOutputStream(zipWriter);
        zipIn = new FileInputStream("C:\Users\mycsv.csv");
        byte []buffer = new byte[1024];
        int length;
        while ((length = zipIn.read(buffer)) > 0) {
            outputStream.write(buffer, 0, length);
        }
        zipIn.close();              
        outputStream.close();
        } 

}

如果您的意思是输出 Gzip 文件中包含的 CSV 文件不保留 CSV 扩展名,解决方案是将输出文件名定义为 "myzip.csv.zip":

  private static final String INPUT_FILE = "C:\Users\mycsv.csv";
  private static final String OUTPUT_FILE = "C:\Users\myzip.csv.gz";

  public static void zip() throws IOException {
    byte[] buffer = new byte[2048];
    FileInputStream inputStream = new FileInputStream(INPUT_FILE);
    FileOutputStream outputStream = new FileOutputStream(OUTPUT_FILE);
    GZIPOutputStream gzipOutputStream = new GZIPOutputStream(outputStream);
    int length;
    while ((length = inputStream.read(buffer)) > 0) {
      gzipOutputStream.write(buffer, 0, length);
    }
    inputStream.close();
    gzipOutputStream.close();
  }

gzip 中的文件将包含 "myzip.csv" 文件。