- tomcat容器默认采用了iso-8859-1的编码方法
- 通过本为UTF-8编码却被tomcat用iso-8859-1解码的字进行恢复,
其将解码后的字通过iso-8859-1反解码成二进制数组,再将该字节数组用UTF-8解码。 - 最终被new String成字符串。
原文链接:https://blog.csdn.net/qintian888/article/details/80452632
//如果是第二次转码会乱码?? 故加上条件二,判断当前字符是什么编码
if(StringUtils.isNotEmpty (patientName) && patientName.equals(new String(patientName.getBytes ("iso8859-1"), "iso8859-1"))){
patientName=new String(patientName.getBytes ("iso8859-1"),"utf-8");
}