1

ここで助けが必要です。私はまだアンドロイド開発者の初心者です。

データ例はこちら

strAPI_TERMINAL= "{ 'terminal': { 'id': 2, 'fmt_id': 'fmt0002', 'terminal_type': 'multiple' }}"

このオブジェクト データを JSONArray に解析する必要があります

ここで私がやったこと...

JSONObject jsonObject = new JSONObject(strAPI_TERMINAL);
JSONArray terminal_array = new JSONArray();
JSONArray t_array = terminal_array.put(jsonObject);

データをログアウトすると...はい、このように配列に解析されました

t_array[{"terminal":{"fmt_id":"fmt0002","id":2,"terminal_type":"multiple"}]

しかし、これを使用して「端末」データを取得するために使用したい場合...

JSONArray TERMINAL_JSON=new JSONArray(t_array.getJSONObject(i).getString("terminal").toString());

それは言います:

Error:Value {"id":2,"fmt_id":"fmt0002","terminal_type":"multiple"} 

誰でも私を助けてください???

助けてくれてありがとう...

4

3 に答える 3

0

あなたのコードによると、't_array' は JSONObject の配列です。「t_array」の各項目にアクセスするには、各項目を JSONObject として取得してから、その JSONObject の値にアクセスする必要があります。

'terminal' の値は、そのように json 配列に変換できない json オブジェクトです。

「端末」の値にアクセスするには、次のようにします

t_array.getJSONObject(i).getJSONObject("terminal");

上記のコードは、JSONObject として以下を返します。

{ 'id': 2, 'fmt_id': 'fmt0002', 'terminal_type': 'multiple' }
于 2013-08-29T03:29:32.270 に答える