gson例外が発生しています:BEGIN_OBJECTが必要ですが、BEGIN_ARRAYでした。しかし、なぜ私は正しい構造を表現したとして私は明確ではない。Java gsonエラー:BEGIN_OBJECTが発生しましたが、BEGIN_ARRAYでした(ただし、型マップは正しいです)。
マイデータ:
[
{
"aws.amazon.com": 426788
},
{
"atsv2-fp.wg1.b.yahoo.com": 141154
},
{
"e2svi.x.incapdns.net": 140445
},
{
"stackoverflow.com": 87624
},
{
"a-sg03sl05.insnw.net": 56665
}
]
マイgsonオブジェクト:
public class GroupedTotals {
public List<Map<String, Float>> BSRecvDestDNSName;
}
使用法:
Gson gson = new Gson();
GroupedTotals groupedTotals = gson.fromJson(output, GroupedTotals.class);
例外:
Parse Error: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2
何か提案がありますか?コードとjsonをカプセル化配列のないマップに変更するとうまくいきますが、上で書いたように配列で動作する必要があります。