客户修改系统的配置,然后以xml格式保存在数据库中,系统中已经做了编码处理,在一个客户的系统上发现可能是由于乱码引发的问题,不知道客户是怎样编辑的,导致有乱码发生:(,需要把有乱码的给找出来,然后重新编辑,再保存,就可以把乱码现象给处理了。
str = xmlData.getData();
//转换为字符数组
char[] cs = str.toCharArray();
def int c;
//编历,一个一个地比较
for(char cc : cs){
//转为整形,每一个ASCII字符对应一个0-127间整数,
c = (int)cc;
//对照ASCII字符表,32以下的需要进行排查,但换行符,回车之类的不在排查范围,有其它特殊情况的,也要一并考虑。
if (c < 32 && c != 10 && c != 9 && c != 13) {
//找到乱码字符,做其它处理,或是输出
buf.append("找到乱码字符: " + c);
buf.append("\n")
break;
}
}
在这里,熟悉ASCII字符表还是挺有用的,记录一下,基础很重要。