如何解析android中有异常语法的JSON?

时间:2015-10-07 00:58:56

标签: java android json

当我尝试解析Android中的JSON字符串时,有org.json.JSONException

org.json.JSONException: Value {"alias":"\ud56b\u
at org.json.JSON.typeMismatch(JSON.java:100)
at org.json.JSONArray.getJSONObject(JSONArray.java:525)

来自服务器的数据如下。

["{\"alias\":\"\\ud56b\\ud50c\",\"address\":\"\\uad00\\ucca0\\ub3d9,\\ub300\\uce58\\ub3d9,\\uc2e0\\uc0ac\\ub3d9\"}","{\"alias\":\"\\uc2e0\\uc0ac\\ub3d9\",\"address\":\"\\uc2e0\\uc0ac\\ub3d9\"}","{\"alias\":\"\\uc591\\uc7ac\\ub3d9\",\"address\":\"\\uc591\\uc7ac\\ub3d9\"}","{\"alias\":\"\\ub79c\\ub364\",\"address\":\"\\ub300\\ud604\\ub3d9,\\ubc29\\ubc30\\ub3d9\"}","{\"alias\":\"\\uc0bc\\ud3c9\\ub3d9\",\"address\":\"\\uc0bc\\ud3c9\\ub3d9\"}","{\"alias\":\"\\ubd80\\uc804\\ub3d9\",\"address\":\"\\ubd80\\uc804\\ub3d9\"}"]

您能否告诉我如何在Android中解析它?

1 个答案:

答案 0 :(得分:1)

您似乎必须删除\才能正确阅读。

尝试这样的事情:result = result.replace("\\", "");

如果你想摆脱\:

result = result.replace("\\\\", "");

同样为你的"{做,这可能是一个问题。

结果是你的前一个,将成为你的新json。

但是Sheychan是对的,你的服务器必须修复它,而不是你的应用程序。