Giriş
Şu satırı dahil ederiz.
Kullanım
Örnek
Şu satırı dahil ederiz.
import java.util.zip.Deflater;
Sıkıştırılmış veriyi açmak için Inflater Sınıfını kullanırız.Kullanım
Örnek
Sıkıştırma (compress) için şöyle yaparız. Burada end() metodu çağrılmıyor ama çağrılmalı
Şöyle yaparız.
Şöyle yaparız.
reset metodu
Şöyle yaparız.
Şöyle yaparız
Şöyle yaparız.
Şöyle yaparız.
Deflater deflater = new Deflater();
deflater.setInput(data);
ByteArrayOutputStream outputStream = new ByteArrayOutputStream(data.length);
deflater.finish();
byte[] buffer = new byte[1024];
while (!deflater.finished()) {
int count = deflater.deflate(buffer);
outputStream.write(buffer, 0, count);
}
outputStream.close();
byte[] output = outputStream.toByteArray();
Örnek
Şöyle yaparız. Burada end() metodu çağrılıyor ama ByteArrayOutputStream.close() çağrılmıyor
public static byte[] compress(byte[] input) {
if (input.length == 0) {
return new byte[0];
}
int len = Math.max(input.length / 10, 10);
Deflater compressor = new Deflater();
compressor.setLevel(Deflater.BEST_SPEED);
compressor.setInput(input);
compressor.finish();
ByteArrayOutputStream bos = new ByteArrayOutputStream(len);
byte[] buf = new byte[len];
while (!compressor.finished()) {
int count = compressor.deflate(buf);
bos.write(buf, 0, count);
}
compressor.end();
return bos.toByteArray();
}
constructor
int level = Deflater.DEFAULT_COMPRESSION;
Deflater deflater = new Deflater (level);
deflate metoduŞöyle yaparız.
//Buffer for compressed data to be written
byte[] outBuf = ...;
int size = deflater.deflate(outBuf);
finished metodu
Şöyle yaparız.
setInputBytes çağrısından sonra yapılır. Tüm sıkıştırılacak verinin verildiğini belirtir. Şöyle yaparız.Şöyle yaparız.
ByteArrayOutputStream bos = new ByteArrayOutputStream(...);
byte[] buffer = new byte[1024];
while (!deflater.finished()) {
int bytesCompressed = deflater.deflate(buffer);
bos.write(buffer, 0, bytesCompressed);
}
finish metodudeflater.finish();
Şöyle yaparız.
deflater.reset();
setInput metodu - byte []Şöyle yaparız
byte[] bytes = ...;
deflater.setInput (bytes);
setInput metodu - byte [] + position + lenŞöyle yaparız.
//Buffer for input data
byte[] inBuf = ...;
//Number of bytes in the buffer
int len = ...;
deflater.setInput (inBuf, 0, len);
setStrategy metoduŞöyle yaparız.
int strategy = Deflater.DEFAULT_STRATEGY;
deflater.setStrategy(strategy);
Hiç yorum yok:
Yorum Gönder