Failo suglaudinimas naudojant DeflaterOutputStream
Ši klasė įgyvendina išvesties srauto filtrą, skirtą duomenims suspausti glaudinimo formatu „defliuoti“. Jis taip pat naudojamas kaip kitų tipų suspaudimo filtrų, tokių kaip GZIPOutputStream, pagrindas. Svarbūs metodai:- Norėdami nuskaityti duomenis, perkelkite į „FileInputStream“ įvesties failą „1 failas“.
- Paimkite išvesties failą „2 failas“ ir priskirkite jį „FileOutputStream“. Tai padės įrašyti duomenis į „file2“.
- Priskirkite FileOutputStream prie „DeflaterOutputStream“, kad suglaudintumėte duomenis.
- Dabar skaitykite duomenis iš FileInputStream ir įrašykite juos į DeflaterOutputStream. Jis suglaudins duomenis ir nusiųs juos į FileOutputStream, kuris saugo suglaudintus duomenis į išvesties failą.
- Faile pavadinimu „file2“ dabar yra suspaustų duomenų, todėl iš šio failo turime gauti originalius išspaustus duomenis.
- Suspaustą failą „file2“ priskirkite „FileInputStream“. Tai padeda nuskaityti duomenis iš „file2“.
- Priskirkite išvesties failą „file3“ prie „FileOutputStream“. Tai padės įrašyti nesuspaustus duomenis į „failą3“.
- Dabar skaitykite nesuglaudintus duomenis iš InflaterInputStream ir įrašykite juos į FileOutputStream. Tai įrašys nesuspaustus duomenis į „file3“.
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(); } }
Failo išglaudinimas naudojant InflaterInputStream
Ši klasė įgyvendina srauto filtrą, skirtą duomenims išspausti glaudinimo formatu „defliuoti“. Jis taip pat naudojamas kaip kitų dekompresijos filtrų, tokių kaip GZIPInputStream, pagrindas. Svarbūs metodai: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(); } }
Sukurti viktoriną