App下載
首頁javabyte_arrayJava I/O - 如何壓縮字節(jié)數(shù)組

Java I/O - 如何壓縮字節(jié)數(shù)組

我們想知道如何壓縮字節(jié)數(shù)組。
import java.io.ByteArrayOutputStream;
import java.util.Arrays;
import java.util.zip.Deflater;

public class Main {
  public static void main(String[] argv) throws Exception {
    byte[] input = "m.o2fo.com".getBytes();

    Deflater compressor = new Deflater();
    compressor.setLevel(Deflater.BEST_COMPRESSION);

    compressor.setInput(input);
    compressor.finish();

    ByteArrayOutputStream bos = new ByteArrayOutputStream(input.length);

    byte[] buf = new byte[1024];
    while (!compressor.finished()) {
      int count = compressor.deflate(buf);
      bos.write(buf, 0, count);
    }
    bos.close();
    byte[] compressedData = bos.toByteArray();
    System.out.println(Arrays.toString(compressedData));
    
  }
}