2014-10-09 3 views
0

Я делаю приложение IOS (быстрое), которое общается с сервером. Ответ от сервера - это массив JSON, который содержит некоторые объекты JSON. Когда я показываю ответ консоли строки нормально:Parser to json JSON array using swift

[{"NAME":"","SURNAME":"","ID":5,"USERNAME":"dpcabo2"},{"NAME":"","SURNAME":"","ID":10,"USERNAME":"default"},{"NAME":"","SURNAME":"","ID":11,"USERNAME":"esteban"}] 

Но когда я пытаюсь анализатору эту информацию, чтобы с помощью этого JSon:

var jsonResult: NSDictionary = NSJSONSerialization.JSONObjectWithData(self.my_data!, 
       options:NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary 

println("\(jsonResult)") 

приложения аварий.

Так что мне нужно правильное решение для анализа этой информации.

Ps.self.my_data! это NSMutableData.

Благодаря

+0

Что заставляет вас думать, 'jsonResult' должен быть' NSDictionary'? Вы даже говорите себе, что сервер возвращает массив JSON ** **. – borrrden

+0

ummm, я не знаю, когда сервер возвращает только одного пользователя, он отправляет json-объект, и этот способ выполняется нормально, но когда возвращается массив json, я не знаю, как его парсер, какая-то идея? – user3086708

ответ

0

Вы можете использовать ниже код для разбора. Он правильно печатает и анализирует ваш объект.

import Foundation 

let jsonObject: [AnyObject] = [ 
    ["NAME":"","SURNAME":"","ID":5,"USERNAME":"dpcabo2"], 
    ["NAME":"","SURNAME":"","ID":10,"USERNAME":"default"], 
    ["NAME":"","SURNAME":"","ID":11,"USERNAME":"esteban"] 
] 


let jsonOptional: AnyObject! = NSJSONSerialization.JSONObjectWithData(jsonData, options: NSJSONReadingOptions(0), error: nil) 

Ответ, как показано ниже:

[["USERNAME": "dpcabo2", "ID": 5, "NAME": "", "SURNAME": ""], 
["USERNAME": "default", "ID": 10, "NAME": "", "SURNAME": ""], 
["USERNAME": "esteban", "ID": 11, "NAME": "", "SURNAME": ""]] 
+0

thansk so muchhhhh !!!! отлично работает;) – user3086708