先在Resources文件夹下新建一个Movies.plist文件,然后往里面添加一些内容。
然后在viewDidLoad方法里面添加如下内容,这样就可以做到如果Documents文件夹下有Movies文件那么就将其内容打印出来,如果没有就修改Resources文件下的Movies文件,然后将其复制到Documents文件夹下:
- (void)viewDidLoad
//下面这两句获取Documents文件夹路径
NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [path objectAtIndex:0];
//添加一个Movies.plist文件在Documents文件夹下
NSString *plistFileName = [documentsDir stringByAppendingPathComponent:@"Movies.plist"];
if ([[NSFileManager defaultManager]fileExistsAtPath:plistFileName]) {//如果这个文件存在,那么就将文件内容打印出来
NSDictionary *dict = [[NSDictionary alloc]initWithContentsOfFile:plistFileName];
for (NSString *category in dict) {
NSLog(@"%@",category);
NSArray *titles = [dict valueForKey:category];
for(NSString *title in titles){
NSLog(@"%@",title);
}
}
[dict release];
}
else{//如果文件不存在,就先修改Resources文件夹下的Movies.plist文件,在每一个array下添加以项,然后复制到Documents文件夹下
NSString *plisPath = [[NSBundle mainBundle] pathForResource:@"Movies" ofType:@"plist"];
NSDictionary *dict = [[NSDictionary alloc]initWithContentsOfFile:plisPath];
NSMutableDictionary *copyofdict = [dict mutableCopy];
NSArray *categoriesArray = [[copyofdict allKeys]sortedArrayUsingSelector:@selector(compare:)];
for(NSString *category in categoriesArray){
NSArray *title = [dict valueForKey:category];
NSMutableArray *mutabletitles = [title mutableCopy];
[mutabletitles addObject:@"helijun"];
[copyofdict setObject:mutabletitles forKey:category];
[mutabletitles release];
}
NSString *fileName = [documentsDir stringByAppendingPathComponent:@"Movies.plist"];
[copyofdict writeToFile:fileName atomically:YES];
[dict release];
[copyofdict release];
}
[super viewDidLoad];
}