2016-05-09 15 views
0

下記のJSONからbeforerangeafterを除外して別の配列/辞書に格納しようとしています。しかし、私はrangeだけを解析することができます。誰かが例を挙げて助けてもらえますか?複数の辞書と配列を持つJSONをSwiftに読み込む

{ 
    "before": [ 
     { 
      "segment": 1, 
      "end": 0, 
      "size": 0 
     }, 
     { 
      "segment": 2, 
      "end": 0.01, 
      "size": 0.1 
     } 
    ], 
    "range": [ 
     100, 
     101, 
     102, 
     103, 
     104, 
     105, 
     106, 
     107, 
     108, 
     109, 
     110 
    ], 
    "after": [ 
     { 
      "segment": 1, 
      "end": 0, 
      "size": 0 
     }, 
     { 
      "segment": 2, 
      "end": 0.5, 
      "size": 0.1 
     }, 
     { 
      "segment": 3, 
      "end": 0.8, 
      "size": 0.3 
     }, 
     { 
      "segment": 4, 
      "end": 1, 
      "size": 0.5 
     } 
    ] 
} 

答えて

1

あなたがしなければならないことは、コンテンツを正しいタイプにキャストすることだけです。

あなたJSONオブジェクトは辞書です。 "before"は辞書の配列、 "after"は似ており、 "range"はIntsの配列です。これを知っ

、それが解読するのは簡単です:

if let json = try? NSJSONSerialization.JSONObjectWithData(data, options: []) { 
    if let dict = json as? [String:AnyObject] { 
     if let before = dict["before"] as? [[String:AnyObject]] { 
      print(before) 
     } 
     if let after = dict["after"] as? [[String:AnyObject]] { 
      print(after) 
     } 
     if let range = dict["range"] as? [Int] { 
      print(range) 
     } 
    } 
} 
関連する問題