이 JSON을 구문 분석하고 싶습니다. 들어오는 JSON의 최상위 레벨에서 배열의 사전 정보에 어떻게 액세스 할 수 있습니까?JSON JSON 데이터를 구문 분석하기위한 구조
[
{
"id": 1,
"name": "Leanne Graham",
"username": "Bret",
"email": "[email protected]",
"address": {
"street": "Kulas Light",
"suite": "Apt. 556",
"city": "Gwenborough",
"zipcode": "92998-3874",
"geo": {
"lat": "-37.3159",
"lng": "81.1496"
}
},
"phone": "1-770-736-8031 x56442",
"website": "hildegard.org",
"company": {
"name": "Romaguera-Crona",
"catchPhrase": "Multi-layered client-server neural-net",
"bs": "harness real-time e-markets"
}
}
]
내 코드이지만 어떻게 사전 데이터를 감지 할 수 있는지 모르겠다.
func profileFromJSONData(data : NSData) -> ProfileResult {
do{
let jsonObject : [[String:AnyObject]]
= try NSJSONSerialization.JSONObjectWithData(data, options: []) as! [[String:AnyObject]]
for profileJSON in jsonObject {
if let profile = profileFromJsonObject(profileJSON) {
finalProfile.append(profile)
}
}
return .Success(finalProfile)
}
catch let error {
return .Failure(error)
}
}
그것은 내가 로컬 파일에 그것을 복용하여 JSON을 시도
func profileFromJsonObject(json: [String:AnyObject]) -> UserProfile?{
guard let
id = json["id"] as? Int,
name = json["name"] as? String,
userName = json["username"] as? String,
email = json["email"] as? String,
address = json["address"] as? NSDictionary,
phone = json["phone"] as? String,
website = json["website"] as? String,
company = json["company"] as? NSDictionary
else {
return nil
}
let obj = UserProfile(id: id, name: name, userName: userName, email: email, address: address, phone: phone, website: website, company: company)
return obj
}
내가 전화 profileFromJsonObject 기능하지 profileFromJSONData입니다. – ava
in profileFromJsonObject 함수 나는 json 배열을 프로파일 인스턴스로 구문 분석합니다. – ava
'profileFromJsonObject'메서드를 표시하십시오. –