Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在android中解析带有未知键的json_Android_Json - Fatal编程技术网

如何在android中解析带有未知键的json

如何在android中解析带有未知键的json,android,json,Android,Json,您好,我正在使用改型从服务器发送和接收数据。如何解析密钥是否不同 有谁能帮我用下面的键解析json吗 {"users": {"19x1": "Admin","19x5": "Manager"}} 您的json结构不正确。基本上,您有一个用户数组,但返回的对象有两个字段19x1和19x2 无法使用改装和Gson解析动态键响应。唯一的方法是在Android中使用普通的Json解析。但是您需要知道列表中的数据在哪里,这样您就可以执行类似的操作 jsonArray.getObject(索引) 如果要获

您好,我正在使用改型从服务器发送和接收数据。如何解析密钥是否不同

有谁能帮我用下面的键解析json吗

{"users": {"19x1": "Admin","19x5": "Manager"}}

您的
json
结构不正确。基本上,您有一个用户数组,但返回的对象有两个字段
19x1
19x2

无法使用
改装
Gson
解析动态
响应。唯一的方法是在Android中使用普通的
Json
解析。但是您需要知道列表中的数据在哪里,这样您就可以执行类似的操作

jsonArray.getObject(索引)

如果要获取对象列表,请将
json
更改为此结构

"users": [
    {
        "role_id": "19x1",
        "description": "Admin"
    },
    {
        "role_id": "19x5",
        "description": "Manager"
    }
]

键不是问题,用户应该是一个对象

{ 
  "users": {
  "19x1": "Admin",
  "19x5": "Manager"
  }
}
在任何json验证器中尝试上述代码以进行检查。。即

已更新以访问值:


如何访问嵌套的JSON对象

var myObj={ “用户”:{ “19x1”:“管理员”, “19x5”:“经理” } } document.getElementById(“demo”).innerHTML+=myObj.users[“19x1”];
您提供的json不正确。应该是这样的:

{"users": {"19x1": "Admin","19x5": "Manager"}}

您可以在此处检查json对象的准确性:

根据您的更改,这是有效的json。。在json验证器上检查它。如何解析这个json?你是说如何访问这些值?@norcaljohnny你的实现很好,但是OP正在尝试使用
Gson
库解析动态json键。这是不可能的。@AouledIssa没有对OP的不尊重,但是这个问题已经被重新编辑了大约5次,每次都添加了一点信息。在文章的前面,它似乎是一个无效的json疏忽,因此其他的答案是。但是谢谢你的评论:)如何解析请告诉我你想解析用户列表吗?我需要知道,因为如果是这样的话,那么您的json可能是不正确的用户列表,将它们稀疏到dictionary@TommySadiqHinrichsen你能给我详细解释一下吗?这能回答你的问题吗?如果我的回复包含500条记录,则为0。对象的
JSON
包含的迭代次数并不重要,重要的是您是否可以使用
GSON
来解析它的对象类。这不是正确的!!格森不是以这种方式工作的。您需要知道解析模型才能进行解析。否则,您只需使用纯java json解析来使用纯java进行解析