DeflaterOutputStream Kullanarak Bir Dosyayı Sıkıştırmak
Bu sınıf, verileri 'deflate' sıkıştırma formatında sıkıştırmak için bir çıkış akışı filtresi uygular. Ayrıca GZIPOutputStream gibi diğer sıkıştırma filtreleri türleri için de temel olarak kullanılır. Önemli Yöntemler:- Verileri okumak için 'dosya 1' giriş dosyasını FileInputStream'e alın.
- 'Dosya 2' çıktı dosyasını alın ve onu FileOutputStream'e atayın. Bu, 'dosya2'ye veri yazmaya yardımcı olacaktır.
- Verileri sıkıştırmak için FileOutputStream'i DeflaterOutputStream'e atayın.
- Şimdi FileInputStream'den verileri okuyun ve DeflaterOutputStream'e yazın. Verileri sıkıştıracak ve sıkıştırılmış verileri çıktı dosyasında saklayan FileOutputStream'e gönderecektir.
- 'Dosya2' isimli dosya artık sıkıştırılmış veri içeriyor ve bu dosyadan orijinal sıkıştırılmış veriyi almamız gerekiyor.
- Sıkıştırılmış 'file2' dosyasını FileInputStream'e atayın. Bu, 'dosya2'den veri okumaya yardımcı olur.
- 'file3' çıktı dosyasını FileOutputStream'e atayın. Bu, sıkıştırılmamış verileri 'dosya3'e yazmaya yardımcı olacaktır.
- Şimdi sıkıştırılmamış verileri InflaterInputStream'den okuyun ve FileOutputStream'e yazın. Bu, sıkıştırılmamış verileri 'dosya3'e yazacaktır.
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.Deflater; import java.util.zip.DeflaterOutputStream; class zip { public static void main(String[] args) throws IOException { //Assign the original file : file to //FileInputStream for reading data FileInputStream fis=new FileInputStream('file1'); //Assign compressed file:file2 to FileOutputStream FileOutputStream fos=new FileOutputStream('file2'); //Assign FileOutputStream to DeflaterOutputStream DeflaterOutputStream dos=new DeflaterOutputStream(fos); //read data from FileInputStream and write it into DeflaterOutputStream int data; while ((data=fis.read())!=-1) { dos.write(data); } //close the file fis.close(); dos.close(); } }
InflaterInputStream kullanarak bir Dosyanın sıkıştırmasını açma
Bu sınıf, 'deflate' sıkıştırma formatındaki verilerin sıkıştırılmasını açmak için bir akış filtresi uygular. Ayrıca GZIPInputStream gibi diğer açma filtreleri için de temel olarak kullanılır. Önemli yöntemler:import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.InflaterInputStream; //Uncompressing a file using an InflaterInputStream class unzip { public static void main(String[] args) throws IOException { //assign Input File : file2 to FileInputStream for reading data FileInputStream fis=new FileInputStream('file2'); //assign output file: file3 to FileOutputStream for reading the data FileOutputStream fos=new FileOutputStream('file3'); //assign inflaterInputStream to FileInputStream for uncompressing the data InflaterInputStream iis=new InflaterInputStream(fis); //read data from inflaterInputStream and write it into FileOutputStream int data; while((data=iis.read())!=-1) { fos.write(data); } //close the files fos.close(); iis.close(); } }
Test Oluştur