属性值有特殊符号导致fastjson反序列化失败处理做Java项⽬有⼀段时间了,感觉跟差别不是太⼤,遇到个⼩问题记录⼀下
1,遇到的问题是,反序列化时候对象属性值带有 & 或者 ‘(单引号)都会导致反序列化失败,并不是Json数据格式的问题2,解决办法是采⽤了。这个属性对应的值进⾏转码处理,试过(uft8,asc)等都不⾏,后⾯采⽤了转 Ascii 码后处理成功⽅法如下,注意空值处理
/**
* 字符串转换为Ascii
* @param value
* @return
*/
public static String stringToAscii(String value)
{
StringBuffer sbu = new StringBuffer();
char[] chars = CharArray();
for (int i = 0; i < chars.length; i++) {
if(i != chars.length - 1)
{
sbu.append((int)chars[i]).append(",");
}
else {
sbu.append((int)chars[i]);
}
}
String();
}
/**
* Ascii转换为字符串
* @param value
* @return
*/
public static String asciiToString(String value)
fastjson忽略属性{
StringBuffer sbu = new StringBuffer();
String[] chars = value.split(",");
for (int i = 0; i < chars.length; i++) {
sbu.append((char) Integer.parseInt(chars[i]));
}
String();
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。