我有json,我想解析为JSONObject。 当我这样做时,它会弄乱json的顺序,见下文。 我该如何解决这个问题?
原json:
{"result":
{"headers":
{
"month_1":"May 2013",
"month_2":"April 2013",
"month_3":"March 2013",
"month_4":"February 2013",
"month_5":"January 2013",
"month_6":"December 2012",
"month_7":"November 2012"
}
}
}
解析为JSONObject之后:
{"result":
{"headers":
{
"month_6":"December 2012",
"month_5":"January 2013",
"month_4":"February 2013",
"month_3":"March 2013",
"month_2":"April 2013",
"month_1":"May 2013",
"month_7":"November 2012"
}
}
}
我的代码:
private void ProcessResponse(String response) {
JSONObject json = new JSONObject(response);
}
答案 0 :(得分:0)
JSON库确实坚持JSON对象中的elemts顺序。要了解更多详情,请关注JSON.org。但是代码不应该严格依赖于json object
中的元素顺序。
答案 1 :(得分:0)
我能想到的一种方法是,尝试将JSONObject转换为arraylist,然后使用下面的代码。 我现在所能想到的一切。如何转换,尝试在谷歌上搜索。
Collections.sort("your arraylist", new Comparator<Item>() {
public int compare(Item i1, Item i2) {
return i1.getCaption().compareTo(i2.getCaption());
}
});