2016-08-10 13 views
0

これは重複した質問ではありません 重複としてマークしないでください。 このJsonはGSONライブラリで解析できますか?GSONで異なるjson形式の文字列を解析できません

{"keyobject": {"keyarray": ["key1", "key2", "key3"]}, 
"valueobject": [{"valuearray": ["arr1_val1", "arr1_val2","arr1_val3"]}, 
{"valuearray": ["arr2_val1", "arr2_val2","arr2_val3"]}]} 
+0

GSONを使用して解析しようとしましたか? – saby

+0

私はhttp://www.jsonschema2pojo.org/ウェブサイトを使用して上記のjson文字列のPOJOクラスを作成しましたが、私はそれを私のbeanクラスで正しくマップすることができません。私は2つのリストを取得しています - キー配列用とその他の値配列用。 各キーを値にマップする方法はわかりません。インデックスが変更される可能性があるため、キーのインデックスを使用してマップする必要はありません。 –

+0

インデックスが変更されるのはなぜですか? – saby

答えて

1

これはいかがですか?

class Outer { 
    KeyObject keyobject; 
    List<ValueObject> valueobject; 
} 

class KeyObject { 
    List<String> keyarray; 
} 

class ValueObject { 
    List<String> valuearray; 
} 
Outer outer = gson.fromJson(json, Outer.class); 
+0

このクラスでこれらの2つのケースを処理する方法 - まずこのjson文字列のいくつかのキーを解析したいだけで、2番目に大きなキーがない場合は、キーをインデックスとして検索するとは思わない価値があります..... –

+0

異なるフィールドセットで複数のクラスを定義できます。デシリアライズ時に余分なフィールドは無視されます。または、JsonParser.parse()メソッドを使用してJsonObjectツリーですべて抽出し、それをDOMとして操作できます。 – inder

関連する問題