有人可以给我一个很好的链接或帮助解释解析json的工作方式。我有一系列像这样的对象........ [{} {} {}]。我试图获得例如{" name" :" John" ....}我调用.get(name)获取值John.or .getString(name)来获取值John。
我遇到的另一件事是在同一个物体上[{"名称":"约翰"," Eta":" 5&#34 ;} ....]我试图调用getstring(ETA)并且在对象上有一个错误可以&#t; t .tstring(Eta)。这可能与某些json有类似/" Time":"(0004253200)" /
之类的事实有关答案 0 :(得分:0)
JSON.stringify() - 将javascript对象转换为JSON字符串。
JSON.parse() - 将JSON字符串转换为javascript对象。
答案 1 :(得分:0)
String json = "{"name" :"John"}";
JsonObject object = new JsonObiect(json);
String name = object.getString("name");
System.out.println(name);
答案 2 :(得分:0)
我将尝试解释如何在android中使用JSON。
假设你有一个像
这样的字符串{
"contacts": [
{
"id": "c200",
"name": "Ravi Tamada",
"email": "ravi@gmail.com",
"address": "xx-xx-xxxx,x - street, x - country",
"gender" : "male",
"phone": {
"mobile": "+91 0000000000",
"home": "00 000000",
"office": "00 000000"
}
},
{
"id": "c201",
"name": "Johnny Depp",
"email": "johnny_depp@gmail.com",
"address": "xx-xx-xxxx,x - street, x - country",
"gender" : "male",
"phone": {
"mobile": "+91 0000000000",
"home": "00 000000",
"office": "00 000000"
}
}
]
}
现在{}
之间的任何内容都是JSON对象。所以整个字符串可以转换为一个JSON对象。
为此:JSONObject obj = new JSONObject(str);
[]
之间的任何内容都是JSON数组。在上面的示例中,"contacts"
是JSONArray。
获取数组JSONArray contacts = jsonObj.getJSONArray("contacts");
现在,假设您需要获取联系人ID c201的名称值。
JSONObject obj = new JSONObject(str); //Convert whole string to JSONObject.
JSONArray contacts = jsonObj.getJSONArray("contacts"); //Get contacts array.
// looping through All Contacts
for (int i = 0; i < contacts.length(); i++) {
JSONObject c = contacts.getJSONObject(i); //Get JSONObject at index i
if(c.getString("id").equals("c201")){
return c.getString("name");
}
}
请查看this article了解更多阅读材料。