//文件名从Args[]从得到:如当前目录有:fog1.txt和fog2.txt
//那在运行时输入Args参数:fog1.txt fog2.txt
//压缩成zip.rar,之后再从zip.rar读出来
import java.io.*;
import java.util.*;
import java.util.zip.*;public class ZipCompress {
public static void main(String[] args)
throws IOException {
//Zip
FileOutputStream f =
new FileOutputStream("zip.rar");
CheckedOutputStream chos =
new CheckedOutputStream(f, new Adler32());
ZipOutputStream zop = new ZipOutputStream(chos);
for(int i = 0; i < args.length; i++){
zop.putNextEntry(new ZipEntry(args[i]));
FileInputStream fs =
new FileInputStream(args[i]);
BufferedInputStream bf =
new BufferedInputStream(fs);
int temp;
while((temp = bf.read()) != -1){
zop.write(temp);
}
}
zop.close();
//UNZip
CheckedInputStream ck = new CheckedInputStream(
new BufferedInputStream(
new FileInputStream("zip.rar")),
new Adler32());
ZipInputStream zis = new ZipInputStream(ck);
ZipEntry ze = zis.getNextEntry();
while(ze != null){
System.out.println(ze);
FileWriter fw = new FileWriter("backup_" + ze.getName());
BufferedWriter bw = new BufferedWriter(fw);
int temp = 0;
while((temp = (int)zis.read()) != -1){
bw.write(temp);
//System.out.write(temp);
}
bw.close();
ze = zis.getNextEntry();
}
zis.close();
ck.close();
}
}
//那在运行时输入Args参数:fog1.txt fog2.txt
//压缩成zip.rar,之后再从zip.rar读出来
import java.io.*;
import java.util.*;
import java.util.zip.*;public class ZipCompress {
public static void main(String[] args)
throws IOException {
//Zip
FileOutputStream f =
new FileOutputStream("zip.rar");
CheckedOutputStream chos =
new CheckedOutputStream(f, new Adler32());
ZipOutputStream zop = new ZipOutputStream(chos);
for(int i = 0; i < args.length; i++){
zop.putNextEntry(new ZipEntry(args[i]));
FileInputStream fs =
new FileInputStream(args[i]);
BufferedInputStream bf =
new BufferedInputStream(fs);
int temp;
while((temp = bf.read()) != -1){
zop.write(temp);
}
}
zop.close();
//UNZip
CheckedInputStream ck = new CheckedInputStream(
new BufferedInputStream(
new FileInputStream("zip.rar")),
new Adler32());
ZipInputStream zis = new ZipInputStream(ck);
ZipEntry ze = zis.getNextEntry();
while(ze != null){
System.out.println(ze);
FileWriter fw = new FileWriter("backup_" + ze.getName());
BufferedWriter bw = new BufferedWriter(fw);
int temp = 0;
while((temp = (int)zis.read()) != -1){
bw.write(temp);
//System.out.write(temp);
}
bw.close();
ze = zis.getNextEntry();
}
zis.close();
ck.close();
}
}
[email protected]://www.maxss.net/