2015-01-08 52 views
0

我正在寻找一种循环低谷JSON对象的好方法。寻找如何做到这一点。欢迎任何帮助。需要将其转换为Java对象。我已经读过,最好的方法是使用GSON,但可以取得正确的结果。如何循环低谷JSON并将其转换为Java对象

{ 
    "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

可能重复的[如何在Android中解析JSON](http://stackoverflow.com/questions/9605913/how-to-parse-json-in-android) – njzk2

回答

1

使用JSONObject

String rawJson = "...."; //escape your string if needed! 
JSONObject json = new JSONObject(s); 
0

这的确是一个很宽泛的问题,但我会尽力给出一个简单的实现GSON的概述。

总之GSON是:

GSON是可以用来将Java对象转换成JSON的表示形式的Java库。它也可以用来将JSON字符串转换为等效的Java对象。 Gson可以使用任意Java对象,包括您没有源代码的预先存在的对象。

下载Gson并将其添加到您的构建路径。然后,将其导入到你的项目:

import com.google.gson.Gson; 
import com.google.gson.GsonBuilder; 

创建GSON对象一起工作:

Gson gson = new GsonBuilder().create(); 

然后,你可以通过简单地传递对象到GSON的toJson() method创建JSON:

gson.toJson(Object); 

或者,您可以'使用'JSON对象来使用fromJson() method从JSON创建对象。这适用于原语,或您指定的类JSON反序列化到:

Person p = gson.fromJson(reader, Person.class); 

替代

您可能要还检查了JSONObject。它看起来像是在Android文档中明确引用的。那个图书馆也很受欢迎。