2015-08-17 5 views
0

Я могу разобрать весь массив JSon. Он выводит на консоль без проблем. Я не могу показаться, чтобы получить индивидуальные параметры из массива ... мой JSON выглядит следующим образом:Parse Json using SwiftyJson

[{ 
     City = NYC; 
     Device = "<null>"; 
     DisplayAs = "Steve Hutson"; 
     FirstName = Steve; 
     LastName = Hutson; 
     MobilePhone = "000-000-0000"; 
     Org = "<null>"; 
     Region = ""; 
     Role = INSPECTOR; 
     SupervisorID = "73990"; 
     email = "[email protected]"; 
     fLast = shutson; 
     "gz_modtimestamp" = "2015-07-28 14:42:41"; 
     id = 96; 
     isActive = YES; 
     lastupdated = "<null>"; 
     sendemail = 1; 
     token = "<null>"; 
     userpassword = "xxx"; 
    },{ 
     City = DET; 
     Device = "<null>"; 
     DisplayAs = "Filipe Washington"; 
     FirstName = Filipe; 
     LastName = Washington; 
     MobilePhone = "000-000-0000"; 
     Org = "<null>"; 
     Region = ""; 
     Role = INSPECTOR; 
     SupervisorID = "6567"; 
     email = "[email protected]"; 
     fLast = shutson; 
     "gz_modtimestamp" = "2015-07-28 13:02:09"; 
     id = 93; 
     isActive = YES; 
     lastupdated = "<null>"; 
     sendemail = 1; 
     token = "<null>"; 
     userpassword = "xxx"; 
    }] 

В моей основной ViewController.swift файл мой запрос JSON выглядит следующим образом:

var myData:NSData = getJSON("http://xxxx/getusersData.php") 

    var myDict:NSArray = parseJSON(myData) 

    println(myDict) 

Печатается мой весь объект json, который является совершенным. Однако моя проблема в том, как я могу получить только FirstName в массиве? По индексу это работает:

println(myDict[0]["FirstName"]) как всегда, он возвращает только один предмет.

Я пытаюсь вставить конкретные элементы json в sqlite, которые я использую SQLite.swift, но мне нужно знать, как извлекать определенные параметры элемента, как если бы я использовал AJAX.

Я пытаюсь получить информацию FirstName, Email и UserPassword.

Любая помощь будет оценена по достоинству.

ответ

2

Вы можете перебрать объект JSON и получить эту информацию:

for (index: String, subJson: JSON) in json { 
    //Do something you want 
    var firstName = subJson["FirstName"].stringValue 
    var email = subJson["email"].stringValue 
    var userPassword = subJson["userpassword"].stringValue 
    // Build the sqlite query with the variables here 
} 

В разъяснении, не имеют доступ к значениям непосредственно, как в json["FirstName"], вы должны также использовать функции типа из SwiftyJSON. В вашем случае они обе строки, поэтому используется stringValue. Если вам нужно и int, это будет intValue.

Существует также опция только json["FirstName"].string в случае, если поле не является обязательным. Взгляните на readme

+0

YOU ROCK !!!!! отлично работает ... – MizAkita