Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 3

Ex No.

29
Date:
Zip a File
Aim:
To write a java program to compress any file into zip file.
Source Code:
import java.io.*;
import java.util.zip.*;
public class ZipCreateExample{
public static void main(String[] args) throws IOException{
System.out.print("Please enter file name to zip : ");
BufferedReader input = new BufferedReader(new InputStreamReader(
System.in));
String filesToZip = input.readLine();
File f = new File(filesToZip);
if(!f.exists()){
System.out.println("File not found.");
System.exit(0);
}
System.out.print("Please enter zip file name : ");
String zipFileName = input.readLine();
if (!zipFileName.endsWith(".zip"))
zipFileName = zipFileName + ".zip";
byte[] buffer = new byte[18024];
try{
ZipOutputStream out = new ZipOutputStream(new FileOutput
Stream(zipFileName));
out.setLevel(Deflater.DEFAULT_COMPRESSION);
FileInputStream in = new FileInputStream(filesToZip);
out.putNextEntry(new ZipEntry(filesToZip));
int len;
while ((len = in.read(buffer)) > 0){
out.write(buffer, 0, len);
}
out.closeEntry();
in.close();
out.close();
}
catch (IllegalArgumentException iae){
iae.printStackTrace();
System.exit(0);
}
catch (FileNotFoundException fnfe){
fnfe.printStackTrace();
System.exit(0);
}
catch (IOException ioe){
ioe.printStackTrace();
System.exit(0);
}
}
}
Output:
Javac ZipCreateExample.java
java ZipCreateExample
Please enter file name to zip : files.txt
Please enter zip file name : compressed
*Note: you may see a file Compressed.zip on the executed path.
Result:
Thus a java program has been written to compress a file.

You might also like