以下のjsonからjson配列の連絡先を解析する必要があります
{
},
//Truncated for clarity
]
}
解析は簡単です。最初にjson-simpleを取得し、それをプロジェクトに追加します (または、組み込みの JSON ライブラリを使用できます。そのライブラリ内のすべてが checked をスローする方法が好きな場合JSONException
)。
次に、応答テキスト全体が有効な JSON オブジェクトです。そうする:
JSONObject response = (JSONObject)JSONValue.parse(responseText);
オブジェクトには、「結果」キーの下に結果の配列があります。次のように取得できます。
JSONArray results = (JSONArray)response.get("result");
配列には、反復して各オブジェクトの連絡先情報を取得するオブジェクトのセットが含まれています。例えば:
for (Object obj : results) {
JSONObject entry = (JSONObject)obj;
JSONArray contacts = (JSONArray)entry.get("contact");
for (Object contact : contacts) {
System.out.println(contact);
}
}
その JSON をまとめた人は誰でも、個々の連絡先エントリを保持するために配列型を使用することにしたことに注意してください。オブジェクト型の方がはるかに理にかなっていcontact.get(0)
ますが、そのままでは、連絡先エントリのタイプ コード ( t
、w
など)contact.get(1)
が提供され、実際の連絡先番号/住所などが提供されます。
これは有効なJsonではないと思います。通常の Json には : が必要"Label"
です"value"
。ラベルと値はコロンで区切る必要があります:
"w","www.firmdale.com"
このようにする必要があります
"w":"www.firmdale.com"
http://code.google.com/p/jsonvalidator/
編集済み: Aroth に従って、より明確かつ具体的にする
object
{}
{ members }
members
pair
pair , members
pair
string : value
array
[]
[ elements ]
elements
value
value , elements
value
string
number
object
array
true
false
null
private JSONObject jObject;
jObject = new JSONObject(your response as string);
//this will give you json object for HotelInformationResponse
JSONArray menuitemArray = popupObject.getJSONArray("result");
// loop through this array to get all values
追加情報については、このリンクを確認してください