2016-08-05 3 views
1

Я хочу разбор моего файла JSON без «результатов» вкладки моего нового файла JSonSwift JSON удалить ключ

[ 
    { 
    "Id": 708, 
    "Name": "My name", 
    "ImageUrl": "2016728135316.jpg" 
    } 

Коды по бросовому

private func getMoviesFromJSON(jsonData: NSData) throws -> [Movie] { 
     var movies = [Movie]() 
     do { 
      if let jsonObject = try NSJSONSerialization.JSONObjectWithData(jsonData, options: .AllowFragments) as? [String: AnyObject], jsonArray = jsonObject["results"] as? [[String: AnyObject]] { 
       for i in jsonArray { 
        var properties = [String: AnyObject]() 
        properties[JSONKeys.id] = i[JSONKeys.id] 
        properties[JSONKeys.title] = i[JSONKeys.title] 
        properties[JSONKeys.posterPath] = i[JSONKeys.posterPath] 
        let movie = Movie(properties: properties) 
        movies.append(movie) 
       } 
      } 
     } catch { 
      throw TMDBErrors.ParsingError 
     } 
     return movies 
    } 

Я думаю, что должно быть изменить эту строку или должна быть Удалить.

JSONObject [ "Результаты"]

мне нужна ваша помощь, спасибо!

ответ

1

Ваш JSON не имеет никаких results параметра .. так что вам не нужно вообще ..

 do { 
     if let jsonArray = try NSJSONSerialization.JSONObjectWithData(jsonData, options: .AllowFragments) as? [[String: AnyObject]] { 
      for i in jsonArray { 
       var properties = [String: AnyObject]() 
       properties[JSONKeys.id] = i[JSONKeys.id] 
       properties[JSONKeys.title] = i[JSONKeys.title] 
       properties[JSONKeys.posterPath] = i[JSONKeys.posterPath] 
       let movie = Movie(properties: properties) 
       movies.append(movie) 
      } 
     } 
    } catch { 
     throw TMDBErrors.ParsingError 
    } 
+1

@El Капитан V2.0 Спасибо работало я aprove своего ответа. – SwiftDeveloper

Смежные вопросы