Procházet zdrojové kódy

提交最后的bug

weiwenhai před 7 roky
rodič
revize
8d6f34dc56

+ 14 - 4
examcloud-core-questions-base/src/main/java/cn/com/qmth/examcloud/core/questions/base/FileDisposeUtil.java

@@ -11,6 +11,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.io.UnsupportedEncodingException;
 import java.net.HttpURLConnection;
 import java.net.URL;
 import java.net.URLEncoder;
@@ -24,6 +25,7 @@ import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang.StringEscapeUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -106,7 +108,10 @@ public class FileDisposeUtil {
 	        //设置Content-Disposition,名称强制为UTF-8
 			//String fileEncode = System.getProperty("file.encoding");
 	        //response.setHeader("Content-Disposition", "attachment;filename="+new String(filename.getBytes(fileEncode),"UTF-8"));
-	        response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode(filename,"UTF-8"));
+	        //response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode(filename,"UTF-8"));
+	        response.setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode(filename,"UTF-8")
+					.replace("%28", "(")
+					.replace("%29", ")"));
 	         // 设置强制下载不打开
 	         response.setContentType("application/octet-stream;charset=utf-8");
 	        //读取目标文件,通过response将目标文件写到客户端  
@@ -242,8 +247,13 @@ public class FileDisposeUtil {
 		}
 	}
 	
-	public static void main(String[] args) {
-		System.out.println(System.getProperty("sun.jnu.encoding"));
-		System.out.println(System.getProperty("file.encoding"));
+	public static void main(String[] args) throws UnsupportedEncodingException {
+//		System.out.println(System.getProperty("sun.jnu.encoding"));
+//		System.out.println(System.getProperty("file.encoding"));
+		String fileName = "梦想(2)";
+		
+		System.out.println(URLEncoder.encode(fileName,"UTF-8")
+							.replace("%28", "(")
+							.replace("%29", ")"));
 	}
 }

+ 1 - 1
examcloud-core-questions-service/src/main/java/cn/com/qmth/examcloud/core/questions/service/export/InitPaperExpService.java

@@ -136,7 +136,7 @@ public  class InitPaperExpService {
     	if(paper.getCourse() == null){
     		paperExpDto.setCourseLevel(CourseLevel.ALL.getName());
     	}else {
-    		paperExpDto.setCourseLevel(paper.getCourse().getLevel() == null?CourseLevel.ALL.getName():CourseLevel.valueOf(paper.getCourse().getLevel()).getName());
+    		paperExpDto.setCourseLevel(CourseLevel.getCourseLevel(paper.getCourse().getLevel()).name());
     	}
     	//获取原试卷所有大题
     	List<PaperDetail> paperDetails = paperDetailRepo.findByPaperOrderByNumber(paper);