[Android Json] 想拿 gsx$name...

  1. {
  2.     "version": "1.0",
  3.     "encoding": "UTF-8",
  4.     "feed": {
  5.         "xmlns": "http://www.w3.org/2005/Atom",
  6.         "xmlns$openSearch": "http://a9.com/-/spec/opensearchrss/1.0/",
  7.         "xmlns$gsx": "http://schemas.google.com/spreadsheets/2006/extended",
  8.         "id": {
  9.             "$t": "xxx"
  10.         },
  11.         "updated": {
  12.             "$t": "2018-02-18T02:47:36.549Z"
  13.         },
  14.         "category": [
  15.             {
  16.                 "scheme": "http://schemas.google.com/spreadsheets/2006",
  17.                 "term": "http://schemas.google.com/spreadsheets/2006#list"
  18.             }
  19.         ],
  20.         "title": {
  21.             "type": "text",
  22.             "$t": "Sheet1"
  23.         },
  24.         "link": [
  25.             {
  26.                 "rel": "alternate",
  27.                 "type": "application/atom+xml",
  28.                 "href": "xxx"
  29.             },
  30.             {
  31.                 "rel": "http://schemas.google.com/g/2005#feed",
  32.                 "type": "application/atom+xml",
  33.                 "href": "xxxx"
  34.             },
  35.             {
  36.                 "rel": "http://schemas.google.com/g/2005#post",
  37.                 "type": "application/atom+xml",
  38.                 "href": "xxx"
  39.             },
  40.             {
  41.                 "rel": "self",
  42.                 "type": "application/atom+xml",
  43.                 "href": "xxx"
  44.             }
  45.         ],
  46.         "author": [
  47.             {
  48.                 "name": {
  49.                     "$t": "xx"
  50.                 },
  51.                 "email": {
  52.                     "$t": "xx@gmail.com"
  53.                 }
  54.             }
  55.         ],
  56.         "openSearch$totalResults": {
  57.             "$t": "1"
  58.         },
  59.         "openSearch$startIndex": {
  60.             "$t": "1"
  61.         },
  62.         "entry": [
  63.             {
  64.                 "id": {
  65.                     "$t": "xxx"
  66.                 },
  67.                 "updated": {
  68.                     "$t": "2018-02-18T02:47:36.549Z"
  69.                 },
  70.                 "category": [
  71.                     {
  72.                         "scheme": "http://schemas.google.com/spreadsheets/2006",
  73.                         "term": "http://schemas.google.com/spreadsheets/2006#list"
  74.                     }
  75.                 ],
  76.                 "title": {
  77.                     "type": "text",
  78.                     "$t": "kBYuDEwqT69nXfHV7qqZPg==\n"
  79.                 },
  80.                 "content": {
  81.                     "type": "text",
  82.                     "$t": ""
  83.                 },
  84.                 "link": [
  85.                     {
  86.                         "rel": "self",Q
  87.                         "type": "application/atom+xml",
  88.                         "href": "xxx"
  89.                     }
  90.                 ],
  91.                 "gsx$name": {
  92.                     "$t": "kBYuDEwqT69nXfHV7qqZPg==\n"
  93.                 }
  94.             }
  95.         ]
  96.     }
  97. }
複製代碼
  1. JSONObject jsonObject = getJSONObjectFromURL(urlString);
  2.             String s = jsonObject.toString();
  3.             serverMessage.setText(s);
  4.             
  5.             //JSONArray params = jsonObject.getJSONArray("entry");
  6.             //JSONObject param1 = params.getJSONObject(0);
  7.             
  8.             //Object param1 = jsonObject.get("feed");
  9.             String s2 = jsonObject.getString("feed.entry");
  10.             
  11.             
  12.             //String s2 = param1.toString();
  13.             googleText.setText(s2);
複製代碼
Always throws exceptions....!!!
PLS HELP
THX

JSONObject obj1 = (JSONObject) jsonObject.get("feed");
JSONObject obj2 = (JSONObject) obj1.get("entry");
JSONObject obj3 = (JSONObject) obj2.get("gsx$name");
String s1 = obj3.getString("$t");
咁得唔得?
JSONObject既get一定要一層層咁入去, 唔可以feed.entry咁用

TOP

Thanks Kin Ching

TOP

Sorry, Kin Ching, the second line already throwing... :(
  1. JSONObject obj1 = (JSONObject) jsonObject.get("feed");
  2. JSONObject obj2 = (JSONObject) obj1.get("entry");
複製代碼

TOP

Sorry, Kin Ching, the second line already throwing... :(
luckiejacky 發表於 2018-2-19 14:00


JSONObject obj1 = (JSONObject) jsonObject.get("feed");
JSONObject obj2 = (JSONObject) obj1.getJSONArray("entry").get(0);
JSONObject obj3 = (JSONObject) obj2.get("gsx$name");
String s1 = obj3.getString("$t");

睇漏左你果個係json array

TOP

做咩分咁多次打....一路get落去啦...

TOP

做咩分咁多次打....一路get落去啦...
專業收買佬 發表於 2018-2-19 17:40


要做type casting
一路get落去要N層括號

TOP

Thanks Kin Ching, works now....

TOP