Browse Source

feat:对文件名进行解码

mozuwen 1 ngày trước cách đây
mục cha
commit
f6adfe888b

+ 5 - 1
mo-daq/src/main/java/com/smppw/modaq/application/service/EmailParseApiServiceImpl.java

@@ -24,9 +24,13 @@ import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.*;
+import java.net.URLDecoder;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
 import java.nio.file.Files;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * @author mozuwen
@@ -105,7 +109,7 @@ public class EmailParseApiServiceImpl implements EmailParseApiService {
         List<ParseResult<ReportData>> dataList = ListUtil.list(false);
         UploadReportParams params = new UploadReportParams();
         for (MultipartFile file : files) {
-            String filename = file.getOriginalFilename();
+            String filename = URLDecoder.decode(Objects.requireNonNull(file.getOriginalFilename()), StandardCharsets.UTF_8);
             File saveFile = this.emailParseService.generateSavePath("upload", new Date(), filename);
             if (!saveFile.exists()) {
                 if (!saveFile.getParentFile().exists()) {