0

次のような JSON コードがあります。

[{ "idShipping":"1328448569",
   "shippingDesti":"nusa tenggara barat",
   "shippingCosts":"21000"
 },
 { "idShipping":"1328448543",
   "shippingDesti":"nusa tenggara timur",
   "shippingCosts":"76000"
 }]

このリンクからチュートリアルに従いました: BlackBerry read json string from an URL。私が変更され

private static final String NAME = "name";

DataParser.java から

private static final String NAME = "idShipping";

しかし、シミュレーターで実行すると、MyScreen.java からのデータの解析に失敗したというポップアップ画面が表示されました。これは、JSON 文字列を取得できますが、解析できないことを意味します。

どうすれば修正できますか?

4

1 に答える 1

0

表示した JSON については、次のidShippingように値を解析します。

  //String response = "[{\"idShipping\":\"1328448569\",\"shippingDesti\":\"nusa tenggara barat\",\"shippingCosts\":\"21000\"},{\"idShipping\":\"1328448543\",\"shippingDesti\":\"nusa tenggara timur\",\"shippingCosts\":\"76000\"}]";
  try {
     JSONArray responseArray = new JSONArray(response);
     for (int i = 0; i < responseArray.length(); i++) {
        JSONObject nextObject = responseArray.getJSONObject(i);
        if (nextObject.has("idShipping")) {
           String value = nextObject.getString("idShipping");
           System.out.println("next id is " + value);
        }
     }
  } catch (JSONException e) {
     // TODO: handle parsing error here
  }

Signare が言ったように、鍵は を解析しJSONArray、そこから文字列値を取得することでした。

于 2013-06-25T10:15:50.127 に答える