java压缩zip文件中文乱码问题

1:jar包
commons-compress-1.0.jar
commons-io.jar

import org.apache.commons.compress.archivers.ArchiveEntry;
import org.apache.commons.compress.archivers.zip.ZipArchiveInputStream;
import org.apache.commons.io.IOUtils;

2:代码片段:

ZipArchiveInputStream zais = new ZipArchiveInputStream(zipFileForm.getInputStream(), "GBK", true);
ArchiveEntry archiveEntry = null;
while((archiveEntry = zais.getNextEntry()) != null) {
//获取文件名
String entryFileName = archiveEntry.getName();
//只处理包中的*.xls文件
if(!entryFileName.endsWith(".xls")){
continue;
}
// 把解压后的数据写到内存数组中.
ByteArrayOutputStream baos = new ByteArrayOutputStream();
IOUtils.copy(zais, baos);

//把解压后的内存数组与ByteArrayInputStream关联
ByteArrayInputStream oneUnzipedIS = new ByteArrayInputStream(baos.toByteArray());
}

你可能感兴趣的:(java)