import java.util.zip.*;
import java.io.*;
public class zip
{
public static void main(String[] argc)
{
// These are the files to include in the ZIP file
String[] filenames = new String[]{"Uzip.java", "zip.java"};
// Create a buffer for reading the files
byte[] buf = new byte[1024];
byte[] buf = new byte[1024];
try {
// Create the ZIP file
String outFilename = "outfile.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
// Create the ZIP file
String outFilename = "outfile.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
// Compress the files
for (int i=0; i<filenames.length; i++) {
FileInputStream in = new FileInputStream(filenames[i]);
for (int i=0; i<filenames.length; i++) {
FileInputStream in = new FileInputStream(filenames[i]);
// Add ZIP entry to output stream.
out.putNextEntry(new ZipEntry(filenames[i]));
out.putNextEntry(new ZipEntry(filenames[i]));
// Transfer bytes from the file to the ZIP file
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
// Complete the entry
out.closeEntry();
in.close();
}
out.closeEntry();
in.close();
}
// Complete the ZIP file
out.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
out.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
解压缩:
import java.util.zip.*;
import java.io.*;
public class Uzip
{
public static void main(String[] argc)
{
try {
// Open the ZIP file
String inFilename = "test.zip";
ZipInputStream in = new ZipInputStream(new FileInputStream(inFilename));
import java.io.*;
public class Uzip
{
public static void main(String[] argc)
{
try {
// Open the ZIP file
String inFilename = "test.zip";
ZipInputStream in = new ZipInputStream(new FileInputStream(inFilename));
// Get the first entry
ZipEntry entry = in.getNextEntry();
ZipEntry entry = in.getNextEntry();
// Open the output file
String outFilename = "o";
OutputStream out = new FileOutputStream(outFilename);
String outFilename = "o";
OutputStream out = new FileOutputStream(outFilename);
// Transfer bytes from the ZIP file to the output file
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
// Close the streams
out.close();
in.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
out.close();
in.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
}