Click here to Skip to main content
Licence CPOL
First Posted 7 Jan 2009
Views 10,385
Downloads 348
Bookmarked 7 times

Compressing and Uncompressing Files in Java

By | 7 Jan 2009 | Article
In this article, I’ll show you how to compress and extract files easily in Java using ziputil.jar.

Introduction

In this article, I'll show you how to compress and extract files easily in Java using ziputil.jar.

Background

You don't need any external libraries or configurations except ziputil.jar to test this project. You can download the source from the link at the top of this article. Source code for the project contains source for ziputil.jar and test classes and files to be tested.

Compressing Files

Uncompressed file class represents an uncompressed state of a zip file. Before compressing a set of files, you need to create an Uncompressed file as shown below passing the path to create the new zip file.

UncompressedFile u=new UncompressedFile("./testFiles/TEST.ZIP");        

Then you can add files which needed to be compressed, to UncompressedFile

u.addFile(new BinaryFileData("test1.txt",
ZipFileUtil.fileToBytes("./testFiles/test1.txt")));

u.addFile(new BinaryFileData("test2.BUP",
ZipFileUtil.fileToBytes("./testFiles/test2.BUP")));

u.addFile(new BinaryFileData("test3.BUP",
ZipFileUtil.fileToBytes("./testFiles/test3.BUP")));

u.addFile(new BinaryFileData("test4.BUP",
ZipFileUtil.fileToBytes("./testFiles/test4.BUP")));        

Now you are ready to compress these files. Call the method ZipFileUtil.compress as shown below: 

byte[] b=ZipFileUtil.compress(u);    

Finally call ZipFileUtil.byteArrayToFile to save the new zip file to your file system.  

ZipFileUtil.byteArrayToFile(u.getPath(),b);     

Extracting Files

To uncompress a file, call the ZipFileUtil.extract method passing path to the zip file to be extracted and path of the folder to save extracted files as below: 

UncompressedFile u=
ZipFileUtil.extract("./testFiles/TEST.ZIP","./testFiles/extract");
ZipFileUtil.saveUncompressedFile(u);        

History

  • 7th January, 2009: Article created (ziputil.zip is not explained yet)

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Thilina S Hasantha

Software Developer
Mubasher
Sri Lanka Sri Lanka

Member

thilina.hasantha@gmail.com
Skype: thilina84
Yahoo: thilina84
Blog : www.cygeek.net/thilina

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
GeneralThanks PinmemberRodrigo.Santellan1:22 4 Mar '09  
GeneralMy vote of 2 Pinmemberkma698:12 20 Jan '09  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web03 | 2.5.120517.1 | Last Updated 7 Jan 2009
Article Copyright 2009 by Thilina S Hasantha
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid