3
我是Gson解析的新手,并且做了很少的基本Gson解析。但是这次我的JSON非常复杂。我的JSON的样子:用Gson解析json与嵌套数组
{"uname":"man101",
"uid":"2",
"account":{
"entry":[8,15.48],
"exit":[8,15.48],
"details":
[[0,0],[0,8.2],[1.15,8.2],[1.15,18.23],[7.33,18.23],[7.33,15.48],[12.15,2.28],
[12.35,2.28],[12.35,0],[10.65,0],[10.65,1.42],[8.1,1.42],[8.1,3.95],
[4.25,3.95],[4.25,0]],
"section":
[
{
"account":[[0,0],[0,3.35],
[4.25,3.35],[4.25,0]],
"category":"office",
"description":"Mobile based company",
"sectionname":"xyz",
"id":1
},
{
"account":[[0,3.95],[0,7.8],
[4.25,7.8],4.25,3.95]],
"category":"office",
"description":"Network based company",
"sectionname":"ABC",
"id":2
},
]
},
"category":"Cowork",
"description":"Combined office space"
}
我试着解析这个在下列方式
public class AccountData
{
public String uname;
public String uid;
public String category;
public String description;
public Account account;
public class Account
{
public float[] entry;
public float[] exit;
public List<float[]> details;
public List<Section> section;
}
public class Section
{
public List<float[]> account;
public String category;
public String description;
public String sectionname;
public String id;
}
}
并尝试通过产生这样
Gson gson = new Gson();
beaconList = gson.fromJson(result, AccountData.class);
它没有任何错误运行,但是当我试图访问一些数据,它给出了空值。
就像FYI一样,Gson对于非静态内部类也没有问题。除此之外,发现。 –
@BrianRoach,请看看https://sites.google.com/site/gson/gson-user-guide#TOC-Nested-Classes-including-Inner-Classes-我指的是文档的那一部分 – giampaolo
是的,我知道他们的文档在那里说什么。他们的文档已经过时了)如果用当前版本的Gson测试它,你会发现它现在可以处理私有的非静态内部类。 –