[英]Access multiple json objects in java
我正在嘗試使用Java代碼從Json訪問數據,我編寫了Java代碼,同時嘗試訪問json中的“標題”或“值”,但是當我獲取“ title”(即事件1)的一個值時,嘗試使用列表訪問“值”,我得到類似[{"0":"1_a","1":"1_b"}, {"0":"2_a","1":"2_b"}]
我想從“標題”和“值”訪問數據,即事件2也應顯示。 全部進口。 在這里編碼
public class JsonToJava {
public void JsontoString() {
String title;
String jsonString = "{\"title\":\"Event 1\","
+ "\"param\":[\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\"],"
+ "\"status\":true,"
+ "\"values\":[{"
+ "\"0\":{\"0\":\"1_a\",\"1\":\"1_b\"},"
+ "\"1\":{\"0\":\"2_a\",\"1\":\"2_b\"}}]"
+ ",\"$$hashKey\":\"object:3\"}"
+ ",{\"title\":\"Event 2\","
+ "\"param\":[\"1\",\"2\",\"3\",\"4\",\"Price1\",\"Price2\",\"5\",\"Status\"],"
+ "\"status\":true," + "\"values\":[{"
+ "\"0\":{\"0\":\"A_a\",\"1\":\"A_b\"},"
+ "\"1\":{\"0\":\"B_a\",\"1\":\"B_b\"}}]"
+ ",\"$$hashKey\":\"object:4\"}";
try {
title = new JSONObject(jsonString).getString("title");
System.out.println(title);
// JSONObject obj = new
// JSONObject("{"0":{"0":"1_a","1":"1_b"},"1":{"0":"2_a","1":"2_b"}}");
JSONObject obj1 = new JSONObject(jsonString);
List<String> list = new ArrayList<String>();
JSONArray array = obj1.getJSONArray("values");
String val = array.getString(0);
for (int i = 0; i < array.length(); i++) {
list.add(array.getJSONObject(i).getString("0"));
list.add(array.getJSONObject(i).getString("1"));
}
System.out.println(list);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
JsonToJava js = new JsonToJava();
js.JsontoString();
}
}
嘗試使用此代碼
public void JsontoString() {
String jsonString = "{\"root\":[{\"title\":\"Event 1\"," + "\"param\":[\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\"]," + "\"status\":true," + "\"values\":[{"
+ "\"0\":{\"0\":\"1_a\",\"1\":\"1_b\"}," + "\"1\":{\"0\":\"2_a\",\"1\":\"2_b\"}}]" + ",\"$$hashKey\":\"object:3\"}"
+ ",{\"title\":\"Event 2\"," + "\"param\":[\"1\",\"2\",\"3\",\"4\",\"Price1\",\"Price2\",\"5\",\"Status\"]," + "\"status\":true,"
+ "\"values\":[{" + "\"0\":{\"0\":\"A_a\",\"1\":\"A_b\"}," + "\"1\":{\"0\":\"B_a\",\"1\":\"B_b\"}}]" + ",\"$$hashKey\":\"object:4\"}]}";
try {
System.out.println(jsonString);
JSONObject obj1 = new JSONObject(jsonString);
List<String> list = new ArrayList<String>();
JSONArray array = obj1.getJSONArray("root");
for (int i = 0; i < array.length(); i++) {
list.add(array.getJSONObject(i).getString("title"));
}
System.out.println(list);
} catch (JSONException e) {
e.printStackTrace();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.