Explorar o código

解决excel打开乱码问题

kouchengxing %!s(int64=4) %!d(string=hai) anos
pai
achega
66a8b888bb

+ 4 - 1
dgtis-common/dgtis-common-core/src/main/java/com/dgtis/common/core/utils/poi/CsvUtil.java

@@ -52,6 +52,7 @@ public class CsvUtil {
      */
     public static void export(HttpServletRequest request, HttpServletResponse response, String fileName, String[] titleStr, String[][] content) throws IOException {
         OutputStreamWriter writer = new OutputStreamWriter(response.getOutputStream(), "UTF-8");
+        writer.write(new String(new byte[] { (byte) 0xEF, (byte) 0xBB,(byte) 0xBF }));//解决excel打开乱码问题
         BufferedWriter csvWriter = new BufferedWriter(writer, 1024);
         //writeRow(new String[]{fileName}, csvWriter);
 
@@ -71,8 +72,8 @@ public class CsvUtil {
         response.setHeader("Content-Disposition", "attachment;filename=\""
                 + formFileName + "\"");
         response.setContentType("multipart/form-data");
+        csvWriter.write(new String(new byte[] { (byte) 0xEF, (byte) 0xBB,(byte) 0xBF }));//解决excel打开乱码问题
         writeRow(titleStr, csvWriter);
-
         for (String[] strings : content) {
             writeRow(strings, csvWriter);
         }
@@ -108,6 +109,8 @@ public class CsvUtil {
      */
     private static void writeRow(String[] str, BufferedWriter csvWriter) throws IOException {
         // 写入文件头部
+
+
         for (String data : str) {
             if (data == null || "null".equals(data)) {
                 csvWriter.write("\"" + " " + "\",");

+ 4 - 0
dgtis-modules/dgtis-modules-data/src/main/java/com/dgtis/data/api/CustomerApiController.java

@@ -1061,12 +1061,16 @@ public class CustomerApiController {
                         switch (custclazz){
                             case "1":
                                 customer.setCustClass("钻石");
+                                break;
                             case "2":
                                 customer.setCustClass("白金");
+                                break;
                             case "3":
                                 customer.setCustClass("黄金");
+                                break;
                             case "4":
                                 customer.setCustClass("普通");
+                                break;
                             default:
                                 customer.setCustClass("无");
                         }