当前访客身份:游客 [ 登录 | 加入开源中国 ]

代码分享

当前位置:
代码分享 » Java  » 编程基础
分享到: 
收藏 +0
0
防止Unicode转码漏洞,我是这样处理的,不知道其他人有么有更好的办法。
限制输入字符,只能输入数字字母和中文字符,
标签: <无>

代码片段(1) [全屏查看所有代码]

1. [代码][Java]代码     跳至 [1] [全屏预览]

private static void checkinput(String val) throws InputException{
	if(StringUtils.isEmpty(val)) return;
	try{
		if(val.getBytes("UTF-8").length>250) throw new InputException("输入的字符过长!");
	}catch(UnsupportedEncodingException e){
		if(val.length()>250) throw new InputException("输入的字符过长!");
	}
	String val2 = val.replaceAll("[^(a-zA-Z0-9\\u4e00-\\u9fa5)]", "");
	if(!val2.equals(val)) throw new InputException("输入的字符中只能包含数字字母和中文字符!");
}


开源中国-程序员在线工具:Git代码托管 API文档大全(120+) JS在线编辑演示 二维码 更多»

发表评论 回到顶部 网友评论(1)

  • 1楼:凌晨一点半 发表于 2016-08-15 17:17 回复此评论
    正则都写出来了 为毛不用Pattern.compile 去匹配呢
开源从代码分享开始 分享代码
罪恶的花生的其它代码 全部(113)...