Komprese souboru pomocí DeflaterOutputStream
Tato třída implementuje filtr výstupního proudu pro kompresi dat v kompresním formátu 'deflate'. Používá se také jako základ pro další typy kompresních filtrů, jako je GZIPOutputStream. Důležité metody:- Vezměte vstupní soubor „soubor 1“ do FileInputStream pro čtení dat.
- Vezměte výstupní soubor ‚soubor 2‘ a přiřaďte jej FileOutputStream . To pomůže zapsat data do „souboru2“.
- Přiřaďte FileOutputStream k DeflaterOutputStream pro kompresi dat.
- Nyní čtěte data z FileInputStream a zapište je do DeflaterOutputStream. Zkomprimuje data a odešle je do FileOutputStream, který uloží komprimovaná data do výstupního souboru.
- Soubor s názvem ‚file2‘ nyní obsahuje komprimovaná data a z tohoto souboru potřebujeme získat původní dekomprimovaná data.
- Přiřaďte komprimovaný soubor ‚file2‘ k FileInputStream. To pomáhá číst data ze „souboru2“.
- Přiřaďte výstupní soubor ‚file3‘ k FileOutputStream. To pomůže zapsat nekomprimovaná data do „file3“.
- Nyní si přečtěte nekomprimovaná data z InflaterInputStream a zapište je do FileOutputStream. To zapíše nekomprimovaná data do „souboru3“.
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(); } }
Dekomprimace souboru pomocí InflaterInputStream
Tato třída implementuje proudový filtr pro dekomprimaci dat v kompresním formátu 'deflate'. Používá se také jako základ pro další dekompresní filtry, jako je GZIPInputStream. Důležité metody: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(); } }
Vytvořit kvíz