1 读取zip文件,可以通过ZipFile来读取。如果需要读取zip文件内部的一个一个文件。有两种方法。第一种是得到枚举。通过循环来读取
如:ZipFile zip=new ZipFile(new File(fileName));
Enumeration enumeration=zip.entries();//通过entries()循环来得到。
while(enumeration.hasMoreElements()){
ZipEntry zipEntry=(ZipEntry)enumeration.nextElement();
System.out.println(zipEntry.getName());
}
2 也可以通过getEntry(name)来得到zipEntry对象。
如:ZipFile zip=new ZipFile(new File(fileName));
ZipEntry zipEntry=zip.getEntry("channel_system_Chinese.txt");//通过getEntry(name)也可以得到指定的ZipEntry对象。
if(zipEntry!=null){
System.out.println("已发现该文件:"+zipEntry.getName());
}
综述:得到zip文件中的一个个zipEntry对象。可以通过ZipFile的entries()和getEntry(name)这两种来得到。第一种是循环,得到枚举。第二种是得到指定的。
完整的例子:
String fileName="D:\\test1.zip";
new TestMain1().readZipEntry(fileName);
public void readZipEntry(String fileName){
try {
ZipFile zip=new ZipFile(new File(fileName));
Enumeration enumeration=zip.entries();
while(enumeration.hasMoreElements()){
ZipEntry zipEntry=(ZipEntry)enumeration.nextElement();
System.out.println(zipEntry.getName());
}
System.out.println("也可以通道文件名来得到zipEntry对象");
ZipEntry zipEntry=zip.getEntry("channel_system_Chinese.txt");
if(zipEntry!=null){
System.out.println("已发现该文件:"+zipEntry.getName());
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
如:ZipFile zip=new ZipFile(new File(fileName));
Enumeration enumeration=zip.entries();//通过entries()循环来得到。
while(enumeration.hasMoreElements()){
ZipEntry zipEntry=(ZipEntry)enumeration.nextElement();
System.out.println(zipEntry.getName());
}
2 也可以通过getEntry(name)来得到zipEntry对象。
如:ZipFile zip=new ZipFile(new File(fileName));
ZipEntry zipEntry=zip.getEntry("channel_system_Chinese.txt");//通过getEntry(name)也可以得到指定的ZipEntry对象。
if(zipEntry!=null){
System.out.println("已发现该文件:"+zipEntry.getName());
}
综述:得到zip文件中的一个个zipEntry对象。可以通过ZipFile的entries()和getEntry(name)这两种来得到。第一种是循环,得到枚举。第二种是得到指定的。
完整的例子:
String fileName="D:\\test1.zip";
new TestMain1().readZipEntry(fileName);
public void readZipEntry(String fileName){
try {
ZipFile zip=new ZipFile(new File(fileName));
Enumeration enumeration=zip.entries();
while(enumeration.hasMoreElements()){
ZipEntry zipEntry=(ZipEntry)enumeration.nextElement();
System.out.println(zipEntry.getName());
}
System.out.println("也可以通道文件名来得到zipEntry对象");
ZipEntry zipEntry=zip.getEntry("channel_system_Chinese.txt");
if(zipEntry!=null){
System.out.println("已发现该文件:"+zipEntry.getName());
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}