Преглед изворни кода

zip包包含中文名称文件,解压缩报错

dengsixing пре 3 година
родитељ
комит
480f8f3a5a

+ 3 - 0
4dkankan-common-utils/src/main/java/com/fdkankan/common/constant/ErrorCode.java

@@ -7,6 +7,9 @@ public enum ErrorCode {
     PARAM_REQUIRED(-3, "缺少必要参数"),
     PARAM_FORMAT_ERROR(-4, "解析请求参数出错"),
     SYSTEM_BUSY(-5, "系统繁忙,请稍后再试!"),
+
+    HAVE_NO_RIGHT(1001, "无权访问!"),
+
     AUTH_FAIL(4000, "鉴权失败!"),
     NON_TOKEN(4001, "无token,请重新登录"),
     TOKEN_ILLEGAL(4002, "token不合法"),

+ 13 - 14
4dkankan-common-utils/src/main/java/com/fdkankan/common/util/CreateObjUtil.java

@@ -301,8 +301,7 @@ public class CreateObjUtil {
 	
 	public static void convertTxtToVisionmodeldata(String srcpath,String despath)throws Exception
 	{
-		try
-		{
+		try{
 			Visionmodeldata.NavigationInfo.Builder builder = Visionmodeldata.NavigationInfo.newBuilder();
 			String jsonFormat = readTxtFileToJson(srcpath);
 			JsonFormat.merge(jsonFormat, builder);
@@ -613,7 +612,7 @@ public class CreateObjUtil {
 	}
 
 	public static void main(String[] args) throws Exception{
-//		CreateObjUtil.convertTxtToVisionmodeldata("F:\\visiontest\\KJ-HXMNTDYs1E.txt", "F:\\visiontest\\vision.modeldata");
+		CreateObjUtil.convertTxtToVisionmodeldata("F:\\visiontest\\vision.txt", "F:\\visiontest\\vision.modeldata");
 //		CreateObjUtil.convertTxtToDam("F:\\visiontest\\modeldata.txt", "F:\\visiontest\\dacf7dfa24ae47fab8fcebfe4dc41ab9_50k.dam");
 
 //		String text = "web:web";
@@ -626,17 +625,17 @@ public class CreateObjUtil {
 //		Thread.sleep(2000);
 //		stopWatch.stop();
 //		System.out.println(stopWatch.getTime(TimeUnit.SECONDS));
-		ExecutorService executorService = Executors.newFixedThreadPool(1);
-		Future<String> future = executorService.submit(()->{
-			return CreateObjUtil.test();
-		});
-
-		try {
-			String s = future.get();
-		}catch (Exception e){
-
-			System.out.println(ExceptionUtil.stacktraceToString(e));
-		}
+//		ExecutorService executorService = Executors.newFixedThreadPool(1);
+//		Future<String> future = executorService.submit(()->{
+//			return CreateObjUtil.test();
+//		});
+//
+//		try {
+//			String s = future.get();
+//		}catch (Exception e){
+//
+//			System.out.println(ExceptionUtil.stacktraceToString(e));
+//		}
 
 
 

+ 3 - 2
4dkankan-common-utils/src/main/java/com/fdkankan/common/util/FileUtil.java

@@ -7,6 +7,7 @@ import java.nio.ByteBuffer;
 import java.nio.MappedByteBuffer;
 import java.nio.channels.FileChannel;
 import java.nio.channels.FileChannel.MapMode;
+import java.nio.charset.Charset;
 import java.util.ArrayList;
 import java.util.Enumeration;
 import java.util.List;
@@ -295,7 +296,7 @@ public class FileUtil {
 		}
 		try(
 			//创建压缩文件对象
-			ZipFile zipFile = new ZipFile(srcFile)
+			ZipFile zipFile = new ZipFile(srcFile, Charset.forName("GBK"))
 		){
 			//开始解压
 			Enumeration<?> entries = zipFile.entries();
@@ -408,7 +409,7 @@ public class FileUtil {
 	public static void main(String[] args) throws Exception {
 
 
-		FileUtil.zip("F:\\test","F:\\test.zip", false);
+		FileUtil.unZip("F:\\test\\KJ-t-VJNe28ZImv_images_展厅全景图.zip", "F:\\test\\aaa");
 
 
 	}

+ 4 - 2
4dkankan-common-utils/src/main/java/com/fdkankan/common/util/FileUtils.java

@@ -3,6 +3,7 @@ package com.fdkankan.common.util;
 import com.alibaba.fastjson.JSONObject;
 import it.sauronsoftware.jave.*;
 import java.net.MalformedURLException;
+import java.nio.charset.Charset;
 import java.util.stream.Collectors;
 import org.apache.tools.zip.ZipEntry;
 import org.apache.tools.zip.ZipFile;
@@ -662,7 +663,7 @@ public class FileUtils {
 
         }
 
-        ZipFile zf = new ZipFile(file);
+        ZipFile zf = new ZipFile(file, "GBK");
 
         Enumeration entries = zf.getEntries();
 
@@ -1088,7 +1089,8 @@ public class FileUtils {
 //        }catch (Exception e){
 //            e.printStackTrace();
 //        }
-        FileUtil.unZip("F:\\test\\t-ja9iBPz.asdf", "F:\\test\\unzip");
+        FileUtils.decompress("F:\\test\\KJ-t-VJNe28ZImv_images_展厅全景图.zip", "F:\\test\\aaa");
+
     }
 
     public static List<String> list(File file) throws Exception{