수색…


통사론

  • (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