【发布时间】:2015-03-01 00:12:51
【问题描述】:
我收到一个 JSON 响应,例如
{
"status": "success",
"0": {
"fname": "john",
"lname":"doe"
},
"1": {
"fname":"jane",
"lname":"doe"
}
}
当我得到这个 JSONObject 并尝试将其放入 JSON 数组中时,元素 0 是 status:succes,元素 1 是 fname: "john", lname: "doe" .. 等等。结果混淆了。该数组与 JSON 响应的顺序不同。如何以相同的顺序将 JSON 响应和每个元素解析为 JSON 对象?
【问题讨论】:
-
为什么要让事情保持相同的顺序?
-
你没有从那个 json 响应中得到一个数组。为什么不解析每个值并按照你想要的顺序放入一个数组中呢?
-
JSON 对象被解码为 hashmaps/hashes/dictionaries/etc(术语取决于语言)。没有固有的键顺序,因此无法保证键出现的顺序。
-
你真正想要得到的是:
["success", {"fname":"john", ...}, ...],所以让服务器这样发送。如果你做不到,那你就不走运了。