JSONオブジェクトのキー値に基づいてすべての値を取得したい。ここjavaハッシュマップでJSONオブジェクトを使用する
は私のサンプルJSONだ:
[{
"zip":544,
"type":"UNIQUE",
"primary_city":"Holtsville",
"acceptable_cities":"",
"unacceptable_cities":"Irs Service Center",
"state":"NY",
"county":"Suffolk County",
"timezone":"America/New_York",
"area_codes":"631",
"latitude":40.81,
"longitude":-73.04,
"world_region":"NA",
"country":"US",
"decommissioned":0,
"estimated_population":0,
"notes":""
},
{
"zip":601,
"type":"STANDARD",
"primary_city":"Adjuntas",
"acceptable_cities":"",
"unacceptable_cities":"Colinas Del Gigante, Jard De Adjuntas, Urb San Joaquin",
"state":"PR",
"county":"Adjuntas",
"timezone":"America/Puerto_Rico",
"area_codes":"787,939",
"latitude":18.16,
"longitude":-66.72,
"world_region":"NA",
"country":"US",
"decommissioned":0,
"estimated_population":0,
"notes":""
}]
だから、キーとしての私の郵便番号に基づいて、私は他のすべての値を取得します。
私は、単一のキーと値のペアを持つJSONオブジェクトに対して同じことを試しましたが、上記のJSONオブジェクトに対してこれを行う方法はわかりません。
json : {"A":"A1","B":"B1","C":"C1"}
map : A1
それを行う方法の任意の提案:ここ
は、単一のキーと値のペアのための私の成功した実行中のコード
import java.util.HashMap;
import java.util.Iterator;
import org.json.JSONObject;
public class map {
public static void main(String[] args) {
String t = "{\"A\":\"A1\",\"B\":\"B1\",\"C\":\"C1\"}";
HashMap<String, String> map = new HashMap<String, String>();
JSONObject jObject = new JSONObject(t);
Iterator<?> keys = jObject.keys();
while(keys.hasNext()){
String key = (String)keys.next();
String value = jObject.getString(key);
map.put(key, value);
}
System.out.println("json : "+jObject);
System.out.println("map : "+map.get("A"));
}
}
出力ですか?
いくつかの以前の回答がありましたが、どれもこの問題に対処していませんでしたか?
はJSONオブジェクトの配列ですか? –
はい.. JSONを私の質問で編集して、より明瞭にしました – x0v
Pls。私の答えを確認してください。 –