Compresser un fichier à l'aide de DeflaterOutputStream
Cette classe implémente un filtre de flux de sortie pour compresser les données au format de compression « deflate ». Il sert également de base à d’autres types de filtres de compression tels que GZIPoutputStream. Méthodes importantes :- Transférez un fichier d'entrée « fichier 1 » vers FileInputStream pour lire les données.
- Prenez le fichier de sortie « fichier 2 » et attribuez-le à FileOutputStream . Cela aidera à écrire des données dans « file2 ».
- Attribuez FileOutputStream à DeflaterOutputStream pour compresser les données.
- Lisez maintenant les données de FileInputStream et écrivez-les dans DeflaterOutputStream. Il compressera les données et les enverra à FileOutputStream qui stocke les données compressées dans le fichier de sortie.
- Le fichier portant le nom « fichier2 » contient désormais des données compressées et nous devons obtenir les données décompressées originales de ce fichier.
- Attribuez le fichier compressé « file2 » à FileInputStream. Cela aide à lire les données de « file2 ».
- Attribuez le fichier de sortie « file3 » à FileOutputStream. Cela aidera à écrire des données non compressées dans « file3 ».
- Lisez maintenant les données non compressées de InflaterInputStream et écrivez-les dans FileOutputStream. Cela écrira les données non compressées dans « 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(); } }
Décompresser un fichier à l'aide d'InflaterInputStream
Cette classe implémente un filtre de flux pour décompresser les données au format de compression « deflate ». Il sert également de base à d’autres filtres de décompression tels que GZIPInputStream. Méthodes importantes :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(); } }
Créer un quiz