<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
Copyright (c) 1998, 2002, Oracle and/or its affiliates. All rights reserved.
DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.

This code is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License version 2 only, as
published by the Free Software Foundation.  Oracle designates this
particular file as subject to the "Classpath" exception as provided
by Oracle in the LICENSE file that accompanied this code.

This code is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
version 2 for more details (a copy is included in the LICENSE file that
accompanied this code).

You should have received a copy of the GNU General Public License version
2 along with this work; if not, write to the Free Software Foundation,
Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.

Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
CA 95054 USA or visit www.sun.com if you need additional information or
have any questions.
-->

</head>
<body bgcolor="white">

Provides classes for reading and writing the standard ZIP and GZIP
file formats.  Also includes classes for compressing and decompressing
data using the DEFLATE compression algorithm, which is used by the
ZIP and GZIP file formats. Additionally, there are utility classes
for computing the CRC-32 and Adler-32 checksums of arbitrary
input streams.


<h2>Package Specification</h2>

</a>
<ul>
  <li><a href="ftp://ftp.uu.net/pub/archiving/zip/doc/appnote-970311-iz.zip">
      Info-ZIP Application Note 970311
      </a> - a detailed description of the Info-ZIP format upon which
      the <code>java.util.zip</code> classes are based.
<p>
  <a name="zip64">
  <li>An implementation may optionally support the ZIP64(tm) format extensions
      defined by the 
      <a href="http://www.pkware.com/documents/casestudies/APPNOTE.TXT">
      PKWARE ZIP File Format Specification</a>. The ZIP64(tm) format extensions
      are used to overcome the size limitations of the original ZIP format.
<p>
  <a name="lang_encoding">
  <li>APPENDIX D of <a href="http://www.pkware.com/documents/casestudies/APPNOTE.TXT">
      PKWARE ZIP File Format Specification</a> - Language Encoding Flag (EFS) to
      encode ZIP entry filename and comment fields using UTF-8.
<p>
  <li><a href="http://www.isi.edu/in-notes/rfc1950.txt">
      ZLIB Compressed Data Format Specification version 3.3</a>
      &nbsp;
      <a href="http://www.isi.edu/in-notes/rfc1950.ps">
      (PostScript)</a>
      (RFC 1950)
<p>
  <li><a href="http://www.isi.edu/in-notes/rfc1951.txt">
      DEFLATE Compressed Data Format Specification version 1.3</a>
      &nbsp;
      <a href="http://www.isi.edu/in-notes/rfc1951.ps">
      (PostScript)</a>
      (RFC 1951)
<p>
  <li><a href="http://www.isi.edu/in-notes/rfc1952.txt">
      GZIP file format specification version 4.3</a>
      &nbsp;
      <a href="http://www.isi.edu/in-notes/rfc1952.ps">
      (PostScript)</a>
      (RFC 1952)
<p>
  <li>CRC-32 checksum is described in RFC 1952 (above)
<p>
  <li>Adler-32 checksum is described in RFC 1950 (above)
</ul>


<!--
<h2>Related Documentation</h2>

For overviews, tutorials, examples, guides, and tool documentation, please see:
<ul>
  <li><a href="">##### REFER TO NON-SPEC DOCUMENTATION HERE #####</a>
</ul>
-->

@since JDK1.1
</body>
</html>


