0

私はEclipseを使ってAndroidアプリケーションを書いています。サーバーに接続して、jsonに応答させることができます。しかし、私の応答は次のようになります。

\n\n{"product_id":"200003578","category":"Jacket","price":"799","description":"Wool blended, Pea","details":"73% Wool, 27 Nylon"}\n

これは日食では解決できず、例外を返します。

誰かがこの応答を処理して配列に解決する方法を知っていますか?

これが私のphpコードです:

 include ("db3.inc");

$sql = "SELECT * from product WHERE product_id='200003578'";
$result = mysql_query($sql);

$array = mysql_fetch_assoc($result);
$product_id=$array['product_id'];


echo json_encode( $array );

これが私がjsonの応答をデコードするために使用したコードです。

    String product_id = null;
    String colour_id = null;
    String colour= null;
    String picture= null;
    try{
    JSONArray jArray = new JSONArray(z);
    JSONObject json_data=null;
    for(int i=0;i<jArray.length();i++){
            json_data = jArray.getJSONObject(i);
            product_id=json_data.getString("product_id");
            colour_id=json_data.getString("colour_id");
            colour=json_data.getString("colour");
            picture=json_data.getString("picture");

    }
    }catch(JSONException e1){
        //Toast.makeText(getBaseContext(), "No Food Found", Toast.LENGTH_LONG).show();
    }

    myActivity.text.setText(product_id);
4

1 に答える 1

1

これはJSONObjectnotです。次のJSONArrayように解析する必要があります。

JSONObject json_data=new JSONObject(yourstring.trim());
product_id=json_data.getString("product_id");
colour_id=json_data.getString("colour_id");
colour=json_data.getString("colour");
picture=json_data.getString("picture");

http://www.androidhive.info/2012/01/android-json-parsing-tutorial/を確認してください

于 2012-11-16T15:03:46.230 に答える