Saya pemula di Android. Dalam Proyek saya, saya mendapatkan json berikut dari Respon HTTP.
[{"Date":"2012-1-4T00:00:00",
"keywords":null,
"NeededString":"this is the sample string I am needed for my project",
"others":"not needed"}]
Saya ingin mendapatkan "NeededString" dari json di atas. Bagaimana cara mendapatkannya?
Ini mungkin bisa membantu Anda.
Java:
JSONArray arr = new JSONArray(result);
JSONObject jObj = arr.getJSONObject(0);
String date = jObj.getString("NeededString");
Kotlin:
val jsonArray = JSONArray(result)
val jsonObject: JSONObject = jsonArray.getJSONObject(0)
val date= jsonObject.get("NeededString")
Anda hanya perlu mendapatkan JSONArray
dan iterasi JSONObject
di dalam Array menggunakan loop meskipun dalam kasus Anda hanya satu JSONObject tetapi Anda mungkin memiliki lebih banyak.
JSONArray mArray;
try {
mArray = new JSONArray(responseString);
for (int i = 0; i < mArray.length(); i++) {
JSONObject mJsonObject = mArray.getJSONObject(i);
Log.d("OutPut", mJsonObject.getString("NeededString"));
}
} catch (JSONException e) {
e.printStackTrace();
}
Sertakan org.json.jsonobject
dalam proyek Anda.
Anda kemudian dapat melakukan ini:
JSONObject jresponse = new JSONObject(responseString);
responseString = jresponse.getString("NeededString");
Dengan asumsi, responseString
menyimpan respons yang Anda terima.
Jika Anda perlu tahu bagaimana cara mengubah respons yang diterima menjadi String, berikut'cara melakukannya:
ByteArrayOutputStream out = new ByteArrayOutputStream();
response.getEntity().writeTo(out);
out.close();
String responseString = out.toString();