iOS5.0新功能之——NSJSONSerialization解析JSON数据

以下是用于保存

复制代码
 1 - (IBAction)touchWriteButton:(id)sender {
 2      NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init];
 3      [dictionary setValue:@"Anthony" forKey:@"First Name"];
 4      [dictionary setValue:@"Robbins" forKey:@"Last Name"];
 5      [dictionary setValue:[NSNumber numberWithUnsignedInteger:51] forKey:@"Age"];
 6      NSArray *arrayOfAnthonysChildren = [[NSArray alloc] initWithObjects:@"Anthony's Son 1", @"Anthony's Daughter 1", @"Anthony's Son 2", @"Anthony's Son 3", @"Anthony's Daughter 2", nil];
 7      [dictionary setValue:arrayOfAnthonysChildren forKey:@"children"];
 8      NSError *error = nil;
 9      NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dictionary options:NSJSONWritingPrettyPrinted error:&error];
10      if (error) { 
11         NSLog(@"dic->%@",error);
12      }
13      [dictionary release];
14      BOOL succeed = [jsonData writeToFile:JSON_PATH atomically:YES];
15      if (succeed) {
16          NSLog(@"Save succeed");
17      }else {
18          NSLog(@"Save fail");
19      }
20 } 
复制代码

下面是读取方式:

复制代码
 1 - (IBAction)touchReadButton:(id)sender { 
 2       NSData *jsonData = [[NSData alloc] initWithContentsOfFile:JSON_PATH];     /* Now try to deserialize the JSON object into a dictionary */
 3       NSError *error = nil;
 4       id jsonObject = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingAllowFragments error:&error];
 5      if (jsonObject != nil && error == nil){
 6          NSLog(@"Successfully deserialized...");
 7          if ([jsonObject isKindOfClass:[NSDictionary class]]){
 8               NSDictionary *deserializedDictionary = (NSDictionary *)jsonObject;
 9               NSLog(@"Dersialized JSON Dictionary = %@", deserializedDictionary);
10          } else if ([jsonObject isKindOfClass:[NSArray class]]){
11              NSArray *deserializedArray = (NSArray *)jsonObject;
12              NSLog(@"Dersialized JSON Array = %@", deserializedArray);
13          } else {
14              NSLog(@"An error happened while deserializing the JSON data.");
15          }
16      }
17      [jsonData release];
18  }
复制代码

你可能感兴趣的:(iOS5.0新功能之——NSJSONSerialization解析JSON数据)