首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

Java ZipInputStream获取ZipEntry替null

2012-09-02 
Java ZipInputStream获取ZipEntry为null做一个上传zip文件的东西。代码如下:@Testpublic void testZip() th

Java ZipInputStream获取ZipEntry为null
做一个上传zip文件的东西。
代码如下:
@Test
public void testZip() throws Exception{
FileOutputStream fos = null;
ZipInputStream zis = null;
ZipEntry entry = null;
File inFile = new File("D:\\Archive.zip");
zis = new ZipInputStream(new FileInputStream(inFile));
while((entry=zis.getNextEntry())!=null){
  //始终进不到这里
System.out.println(entry.getName());
}
if(zis != null){
zis.close();
}
}
显示zis.getNextEntry()一直都是null。
但是zis不为null
D:\\Archive.zip 这个文件下面有5个.text文件。

[解决办法]
另外:
java的zip解压缩不支持中文命名的ZipEntry,遇中文会报错或乱码。
可以考虑apache的的api。
[解决办法]
5个txt文件里有中文文件名的吗?
有的话,试试楼上说的apache的api。
指定正确的encode再试试看。

热点排行