-1

Android アプリで JSON を読み取っていますが、次の JSON は認識されません

{"value":"1000","make":"Ford","model":"Focus","desc":"1.9 Zetec","Fuel":"petrol"}

これは、Web サーバー上の PHP ファイルから生成された出力です。この JSON に何か問題がありますか、それとも次のコードに問題がありますか?

try {
  JSONArray jArray = new JSONArray(result);
  JSONObject json_data=null;
  for(int i=0;i<jArray.length();i++){
    json_data = jArray.getJSONObject(i);
    String car_value = json_data.getString("value");
    Log.e("JSON",car_value);
  }
} catch (JSONException  e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
} 
4

2 に答える 2

4

指定された文字列は Json 配列ではありません。それがJsonオブジェクトです。したがって、Json オブジェクトで解析します。

以下のように

try {
            JSONObject jObject = new JSONObject(result);
            String value = jObject.getString("value");
            String make = jObject.getString("make");
            // TODO and so on
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
于 2013-08-23T09:08:38.437 に答える
3

受け取っている json データは JSONArray ではありません。JSONObject です。したがって、次のように受け取る必要があります。

JSONObject jArray = new JSONObject(result);

そして、値が必要な場合は、次のように取得できます

String car_value = jArray.getString("value");
于 2013-08-23T09:08:50.947 に答える