Java Zip Compression Examples
http://www.example-code.com/java/zip.asp
http://hi.baidu.com/csacer/blog/item/329439311531bb02ebc4afb3.html/cmtid/2c6273fa98dc6511a8d311da
http://www.keygenguru.com/serial/chilkat_zip_v7_0_3.html
How to extract Java resources from JAR and zip archives
http://www.javaworld.com/javaworld/javatips/jw-javatip49.html?page=1
如何通过java,不进行解压zip/rar文件操作,就把压缩文件中的文件名给读取出来?
package com.lch.test;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
public class ZIP {
public static void main(String[] argv) throws Exception {
ZipFile zf = new ZipFile("E:\\wk\\LBSLEMIS201106141057\\LBSLEMIS\\test\\com\\lch\\test\\filename.zip");
for (Enumeration entries = zf.entries(); entries.hasMoreElements();) {
String zipEntryName = ((ZipEntry) entries.nextElement()).getName();
System.out.println(zipEntryName);
}
}
}
但是要注意中文乱码问题
http://bbs.bccn.net/thread-344366-1-1.html
ZipInputStream是一个指向ZIP文件的流,这个流最重要的方法就是getNextEntry方法,一个zip文件可以包含好几个被压缩的文件,这个方法的功能就是返回下一个目录项,也就是返回zip文件中的下一项,并且把流指向这个目录文件项。
getNextEntry的返回值是ZipEntry,它表示zip文件中的一个项,它可以返回这个文件项的大小、名称等。你可以根据它返回的文件大小调用ZipInputStream的read方法来读取需要的字节。
给你一个例子:
public class ZipTest {
public static void main(String args[]) throws FileNotFoundException, IOException{
ZipInputStream zis = new ZipInputStream(new FileInputStream ("c://a.zip"));//生成读取ZIP文件的流
ZipEntry ze = zis.getNextEntry();//取得下一个文件项
long size = ze.getSize();//取得这一项的大小
FileOutputStream fos = new FileOutputStream("c://"+ze.getName());//产生输出文件对象
for(int i= 0;i<size;i++){//循环读取文件并写入输出文件对象
byte c = (byte)zis.read();
fos.write(c);
}
fos.close();
zis.close();
}
}
http://wenwen.soso.com/z/q190504968.htm
关于java解压zip与rar的问题