浏览代码

处理非法字符

zengtx 2 年之前
父节点
当前提交
3a20ac976b

+ 24 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/documents/shippingDetails/controller/SyShippingDetailsController.java

@@ -44,6 +44,8 @@ import org.jeecg.modules.documents.shippingDetails.service.ISyShippingDetailsIte
 import org.jeecg.modules.documents.shippingDetails.service.ISyShippingDetailsService;
 
 import java.util.logging.SimpleFormatter;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 import org.jeecg.modules.documents.syShippingOrder.entity.SyShippingOrderItem;
 import org.jeecg.modules.monitor.service.impl.RedisServiceImpl;
@@ -670,6 +672,18 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 			  while (sheets.hasNext()){
 				  Sheet sheet=(Sheet) sheets.next();
 				  //页签命名规范 款号-分销点 用-后缀数字区分
+				  //判断非法字符
+				  //boolean flag = isSpecialChar(syPreList.get(index).getDistributionPoint());
+				  //if(flag == true){
+				  if(syPreList.get(index).getDistributionPoint().contains("/")) {
+					  String disSplit[] = syPreList.get(index).getDistributionPoint().split("/");
+					  StringBuffer sbu = new StringBuffer();
+					  sbu.append(disSplit[0]);
+					  sbu.append("_");
+					  sbu.append(disSplit[1]);
+					  syPreList.get(index).setDistributionPoint(sbu.toString());
+				  }
+				  //}
 				  workbook.setSheetName(index,syPreList.get(index).getItemNumber()+"-"+syPreList.get(index).getDistributionPoint()+"-"+(index+1));
 				  StringBuilder builder = new StringBuilder();
 				  StringBuilder builder1 = new StringBuilder();
@@ -1568,4 +1582,14 @@ public class SyShippingDetailsController extends JeecgController<SyShippingDetai
 
         return result;
 	 }
+
+
+
+     //处理非法字符
+	 public static boolean isSpecialChar(String str) {
+		 String regEx = "[ _`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]";
+		 Pattern p = Pattern.compile(regEx);
+		 Matcher m = p.matcher(str);
+		 return m.find();
+	 }
 }