我正在寻找循环JSON对象的好方法。寻找例子如何做到这一点。欢迎任何帮助。需要将其转换为Java对象。我已经读过,最好的方法是使用GSON,但可以获得正确的结果。
{
"countries":[
{
"MobileCountry":{
"id":2,
"name":"England",
"languages":[
{
"MobileLanguage":{
"code":"en",
"name":"English"
}
},
{
"MobileLanguage":{
"code":"ru",
"name":"Russian"
}
}
],
"mobile_code":"+60",
"currency_code":"EUR",
"regions":[
{
"MobileRegion":{
"region_id":2048,
"name":"trr"
}
},
{
"MobileRegion":{
"region_id":1024,
"name":"Wonderland"
}
}
]
}
},
{
"MobileCountry":{
"id":1,
"name":"Spain",
"languages":[
{
"MobileLanguage":{
"code":"esp",
"name":"Spanish"
}
},
{
"MobileLanguage":{
"code":"en",
"name":"English"
}
}
],
"mobile_code":"+456",
"currency_code":"EUR",
"regions":[
{
"MobileRegion":{
"region_id":1,
"name":"region_1"
}
},
{
"MobileRegion":{
"region_id":8,
"name":"region_2"
}
},
{
"MobileRegion":{
"region_id":32,
"name":"Region1"
}
},
{
"MobileRegion":{
"region_id":64,
"name":"GaBus"
}
}
]
}
}
]
}
答案 0 :(得分:1)
使用JSONObject:
String rawJson = "...."; //escape your string if needed!
JSONObject json = new JSONObject(s);
答案 1 :(得分:0)
可以进行更多研究并发布您的代码以获得更有用的反馈。
重复: How to parse JSON in Android
android有一个类: http://developer.android.com/reference/android/util/JsonReader.html
答案 2 :(得分:0)
这确实是一个广泛的问题,但我会尝试概述GSON的简单实现。
简而言之,GSON是:
Gson是一个Java库,可用于将Java对象转换为JSON表示。它还可用于将JSON字符串转换为等效的Java对象。 Gson可以处理任意Java对象,包括你没有源代码的预先存在的对象。
下载Gson并将其添加到您的构建路径中。然后,将其导入您的项目:
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
创建Gson对象以使用:
Gson gson = new GsonBuilder().create();
然后你可以通过简单地将对象传递给Gson' s toJson()
method来创建JSON:
gson.toJson(Object);
或者,你可以消费'使用fromJson()
method从JSON创建对象的JSON对象。这适用于基元,或者您将要反序列化的JSON类指定为:
Person p = gson.fromJson(reader, Person.class);
<强>替代强>
您可能还想查看JSONObject。看起来它在Android文档中明确引用。那个图书馆也很受欢迎。