Explorar el Código

解决zip压缩包中文件名含有中文时,解压失败的问题

sunyj hace 8 años
padre
commit
e5dba0070b
Se han modificado 1 ficheros con 2 adiciones y 1 borrados
  1. 2 1
      src/main/java/com/uas/report/util/ZipUtils.java

+ 2 - 1
src/main/java/com/uas/report/util/ZipUtils.java

@@ -10,6 +10,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.nio.charset.Charset;
 import java.util.Enumeration;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
@@ -144,7 +145,7 @@ public class ZipUtils {
 			return;
 		}
 
-		ZipInputStream zipInputStream = new ZipInputStream(new ByteArrayInputStream(zipData));
+		ZipInputStream zipInputStream = new ZipInputStream(new ByteArrayInputStream(zipData), Charset.forName("GBK"));
 		ZipEntry zipEntry;
 		while ((zipEntry = zipInputStream.getNextEntry()) != null) {
 			File outFile = new File(folderPath + File.separator + zipEntry.getName());