2010-09-20 79 views
0

只是想:如何更容易分析我要分析的JSON的JSON

[{ “ID”: “SSQ”, “名”: “双色球”, “术语”: “2010092”, “date”:“2010-08-12 19:15”,“numbers”:{“normal”:“3,13,19,27,28,30”,“special”:“2”},“累积奖金” :“30000000”},{“id”:“3d”,“name”:“3D”,“term”:“2010216”,“date”:“2010-08-12 19:55”,“numbers”: { “正常”: “6,8,8”}, “中奖”: “ - ”},{ “ID”: “通活”, “姓名”: “七乐彩”, “术语”: “2010093”,“日期“:”2010-08-11 20:45“,”数字“:{”正常“:”08,09,10,11,16,21,27“,”特殊“:”26“},”累积奖金“ :“0”},{“id”:“dfljy”,“name”:“东方6 + 1”,“term”:“2010093”,“date”:“2010-08-14 18:30”数字 “:{” 正常 “:” 4,1,3,9,7,2" , “特”: “羊”}, “中奖”: “12866531”},{ “ID”: “swxw”,”名称“:”15选5“,”术语“:”2010217“,”日期“:”2010-08-12 18:45“,”数字“:{”normal“:”1,3,5,13, 15 “},” 大奖 “:” 5693612 “},{” ID “:” SSL “ ”姓名“: ”时时乐“,” 吨erm“:”20100811-23“,”date“:”2010-08-12 10:27“,”numbers“:{”normal“:”6,7,1“},”jackpot“:” - “} ,{“id”:“klsf”,“name”:“快乐十分”,“term”:“201021649”,“date”:“2010-08-11 22:00”,“numbers”:{“normal” : “5,11,12,14,20”}, “中奖”: “ - ”},{ “ID”: “klsc”, “名”: “快乐双彩”, “术语”: “2010215”, “date”:“2010-08-10 21:25”,“numbers”:{“normal”:“12,23,10,15,7,3”,“special”:“11”},“大奖” :“198059”}]

我想获得所有这些数据,但是数据太多了,所以我是否需要创建8种类来存储数据,以便于使用。谢谢!

+0

指定“分析”的含义! – adamse 2010-09-20 14:25:29

回答

1

为了增加cfei的回应,一方面处理来自Flickr的JSON响应时,我所做的,是创建一个新类特别是对于那些类型的对象。

所以对于你的,只是用耳朵玩它,就像下面的东西:

public class Lottery() { 
    private JSONObject json; 
    private String id; 
    private String name; 
    private String term; 
    private String date; 
    private String norm_numbers; 
    private String spec_numbers; 
    private String jackpot; 

    public Lottery(JSONObject json) { 
     this.json = json; 
    } 
    public void setId() 
    { 
     try { 
      id = json.getString("id"); 
     } catch (JSONException e) { 
      id = ""; 
     } 
    } 
    //additional getters and setters, etc. 
} 

这种方式,可以使对象的数组,并访问领域,像这样:

//...get a JSONObject from the array... 
Lottery lottery = new Lottery(json); 
Log.v("ID", lottery.id); 
Log.v("Name", lottery.name); 

等。

+0

谢谢你的回答 – 2010-09-22 03:05:02

0

你的意思是你想遍历这个JSONArray中的八个JSONObjects的每一个?你需要用上面提到的输入字符串创建一个JSONArray对象(我们称之为“response”,如下所示),然后遍历数组获取它包含的每个JSONObject。例如:

JSONArray array = new JSONArray(response); 
for(int i = 0; i < array.length(); i++) { 
    JSONObject obj = array.getJSONObject(i); 

    // do something with obj 
    // example: to get the id for a particular object, use obj.getString("id") 
    Log.i("Example", "the id is"+obj.getString("id")); 
} 
+0

谢谢,可能是我没有指定的排队,对不起 – 2010-09-22 03:04:06