`

java中replaceAll用正则表达式对字符串的特殊字符进行过滤

 
阅读更多

在java的上传文件的时候,有时候需要对上传文件名称中含有的特殊字符,特别是在URL的关键字字符进行过滤,不然即使这个文件保存到了数据库,在下载这个文件时,由于通过url发送的url请求参数中的文件名带有特殊字符,而没法得到正确的中文文件名,以至在数据库中取不到不到正确的文件而下载失败,因此上传的时候对文件名做如下处理:

 

		// 获得文件:
		MultipartFile multipartFile = multipartRequest.getFile(inputFileName);
		// 获得文件名:
		String fileName = multipartFile.getOriginalFilename();
		//过滤文件特殊字符,因为这些在下载时的url请求参数中属于url固有的特殊字符+/?%#&=
		String regEX="[+%#&=()]";
		Pattern p=Pattern.compile(regEX);
		Matcher m=p.matcher(fileName);
		fileName=m.replaceAll("").trim();
 
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics