问题描述
- 一个关于json-lib转json的小问题
-
最近在使用json-lib把xml转成json的时候,发现生产的json的属性前面都被加了一个前缀“@”符号,很讨厌,查了查API也没找到去掉的方法,好像源码中就直接写死了,不知道有没有大神有好的解决办法?
JSON json = xmlSerializer.read(responseXml);
生成的json就是这样的:
{
"commitdata": {"data": {"datarow": {
"@patient_id": "001185271900",
"@card_code": "21",
"@card_no": "081164428450",
"@query_type": "2",
"@times": "",
"@start_date": "",
"@end_date": ""
}}},
"returndata": [],
"operateinfo": {"info": {
"@method": "YYT_QRY_ORDER",
"@opt_id": "Z0001",
"@opt_name": "Z0001",
"@opt_date": "2015-08-26",
"@guid": "T00320150826090546",
"@opt_ip": "10.8.18.94"
}},
"result": []
}
解决方案
解决方案二:
json = json.replaseAll("@","");试试
解决方案三:
自己再直接替换掉@好了,这应该是类库的行为
解决方案四:
有@的应该都是属性吧。应该是特殊标示。
如果写死的,也没有条件可以跳过,那么只有数据再加工。
replaseAll使用正则表达式,认为效率不好,推荐String.replace。
解决方案五:
楼主 不然对特殊的字段 md5一次
然后在服务器端 解密一次
时间: 2024-08-14 07:08:34