Objective-C Language
NSJSONSerialization
수색…
통사론
- (id) JSONObjectWithData : (NSData *) 데이터 옵션 : (NSJSONReadingOptions) opt 오류 : (NSError * _Nullable *) 오류
매개 변수
운영자 | 기술 |
---|---|
데이터 | JSON 데이터가 포함 된 데이터 객체 |
고르다 | JSON 데이터를 읽고 Foundation 객체를 만드는 옵션. |
오류 | 오류가 발생하면 반환시 문제를 설명하는 NSError 개체가 포함됩니다. |
비고
iOS 5.0 이상에서는 NSJSONSerialization을 사용할 수 있습니다. JSON으로 변환 될 수있는 객체는 다음과 같은 속성을 가져야합니다.
최상위 개체는 NSArray 또는 NSDictionary입니다.
모든 개체는 NSString, NSNumber, NSArray, NSDictionary 또는 NSNull의 인스턴스입니다.
모든 사전 키는 NSString의 인스턴스입니다.
숫자는 NaN 또는 무한대가 아닙니다.
NSJSONSerialization을 사용하여 JSON 구문 분석하기 Objective c
NSError *e = nil;
NSString *jsonString = @"[{\"id\": \"1\", \"name\":\"sam\"}]";
NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: data options: NSJSONReadingMutableContainers error: &e];
if (!jsonArray) {
NSLog(@"Error parsing JSON: %@", e);
} else {
for(NSDictionary *item in jsonArray) {
NSLog(@"Item: %@", item);
}
}
산출:
Item: {
id = 1;
name = sam;
}
예 2 : url의 내용 사용 :
//Parsing:
NSData *data = [NSData dataWithContentsOfURL:@“URL HERE”];
NSError *error;
NSDictionary *json = [NSJSONSerialization JSONObjectWithData:data options:kNilOptions error:&error];
NSLog(@“json :%@”,json);
샘플 응답 :
json: {
MESSAGE = “Test Message";
RESPONSE =(
{
email = "[email protected]";
id = 15;
phone = 1234567890;
name = Staffy;
}
);
STATUS = SUCCESS;
}
NSMutableDictionary *response = [[[json valueForKey:@"RESPONSE"] objectAtIndex:0]mutableCopy];
NSString *nameStr = [response valueForKey:@"name"];
NSString *emailIdStr = [response valueForKey:@"email"];
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow