读写.plist文件的例子

10.13.2011, Iphone, by , 361 views.
想在一个类里把个数组写进.plist文件里,再在另一个类里从这个.plist文件把数组读取出来?
以name,phoneNumber,age三个字段,为例。我是做的iphone,在文本框中输入数据,获取后,装入数组中。然后把数组写入.plist文件
写操作
NSString *name=[txt1 text];
NSNumber *phoneNumber=[[NSNumber alloc] initWithInt:[[txt2 text] intValue]];
NSNumber *age=[[NSNumber alloc] initWithInt:[[txt3 text] intValue]];
NSMutableArray *array=[[NSMutableArray alloc]init];
[array addObject:name];
[array addObject:phoneNumber];
[array addObject:age];
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSString *filename=[path stringByAppendingPathComponent:@"personal.plist"];
[array writeToFile:filename atomically:YES];
[array release]; 


读操作
NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);
NSString *path=[paths objectAtIndex:0];
NSString *filename=[path stringByAppendingPathComponent:@"personal.plist"];
NSMutableArray *array=[[NSMutableArray alloc] initWithContentsOfFile:filename];
txt1.text=[array objectAtIndex:0];
txt2.text=[[NSString alloc] initWithFormat:@"%d",[[array objectAtIndex:1] intValue]];
txt3.text=[[NSString alloc] initWithFormat:@"%d",[[array objectAtIndex:2] intValue]];
[array release];