2016-11-15 6 views
0
JSONParser parser = new JSONParser(); 
    try { 
     Object obj = parser.parse(new FileReader("C:/Users/dan/Documents/rental.txt")); 
     JSONObject jsonObject = (JSONObject) obj; 
     for(Iterator iterator = jsonObject.keySet().iterator(); iterator.hasNext();) { 
      String key = (String) iterator.next(); 
      System.out.println(jsonObject.get(key)); 
     } 

    } catch (Exception e) { 
     e.printStackTrace(); 
    } 

はJSON文字列です:解析とJSON Javaで取得する要素

{ 
    "Search": { 
     "VehicleList": [ 
      { 
       "sipp": "CDMR", 
       "name": "Ford Focus", 
       "price": 157.85, 
       "supplier": "Hertz", 
       "rating": 8.9 
      }, 
      { 
       "sipp": "FVAR", 
       "name": "Ford Galaxy", 
       "price": 706.89, 
       "supplier": "Hertz", 
       "rating": 8.9 
      } 
      ] 
     } 
     } 
} 

こんにちは、私は私のコードで全体のJSONオブジェクトを反復処理することができますが、今、私は名前を印刷したいです車両の価格と車両の価格とを個別に管理する。 JSONを使って作業する場合、私は初心者です。

+0

実際に何をしたいですか? –

+0

各車両の名前と各車両の価格を印刷したい@PSM –

答えて

0

jsonを反復処理する必要があります。例えば。

$.Search.VehicleList[0].price will give you [157.85] 
$.Search.VehicleList[1].price will give you [706.89] 

http://www.jsonquerytool.com/あなたのための便利来る:)あなたのJSONを念頭に置いて、このJsonObject -> JsonArray-> [JsonObject]
のように構成されている

1

あなたはに応じて、この

Object obj = parser.parse(new FileReader("C:/Users/dan/Documents/rental.txt")); 
JSONArray jsonArray = (JSONObject) obj.getJsonArray("VehicleList"); 
for(JSONObject jsonObject : jsonArray){ 
     System.out.println(jsonObject.getString("name") + " " + jsonObject.getDouble("price")) 
    } 
} 

で名前と価格にアクセスすることができますあなたのインポートライブラリは上記とは異なるかもしれませんが、コンセプトは同じです。

+1

こんにちは、私のインポートライブラリはorg.json.simpleです。としょうかん –

関連する問題