[util] - 자바 문자열 압축/압축풀기
문자열 압축
public static byte[] compress(String src) throws IOException {
byte[] dataByte = src.getBytes();
Deflater deflater = new Deflater();
deflater.setLevel(Deflater.BEST_COMPRESSION);
deflater.setInput(dataByte);
deflater.finish();
ByteArrayOutputStream bao = new ByteArrayOutputStream(dataByte.length);
byte[] buf = new byte[1024];
while(!deflater.finished()) {
int compByte = deflater.deflate(buf);
bao.write(buf, 0, compByte);
}
bao.close();
deflater.end();
return bao.toByteArray();
}
문자열 압축 풀기
public static byte[] decompress(byte[] data) throws IOException, DataFormatException {
Inflater inflater = new Inflater();
inflater.setInput(data);
ByteArrayOutputStream bao = new ByteArrayOutputStream();
byte[] buf = new byte[1024];
while(!inflater.finished()) {
int compByte = inflater.inflate(buf);
bao.write(buf, 0, compByte);
}
bao.close();
inflater.end();
return bao.toByteArray();
}