A zipfile encapsulates the necessary functionality to work with ZIP files. The JDK provides classes to compress a stream of data or to compress multiple files and store the result in one file. A Jar file is similar to a ZipFile, it conforms to the same ZIP standard, but a Jar can be optionally associated with a Manifest file that describes the entries in that Jar. Check out the code examples and following sites.