plist文件操作总结

 

plist文件类 (负责文件的读写,删除整个文件)

#import "Plist.h"

@implementation Plist


- (void)writePlist:(NSMutableDictionary*)dictionary

{

    NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES);

    NSString *docPath = [[array objectAtIndex:0] stringByAppendingPathComponent:PLISTNAME];

    [dictionary writeToFile:docPath atomically:YES];

    [array release];

}


- (void)readPlist:(NSMutableDictionary**)dictionary

{

    NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES);

    NSString *docPath = [[array objectAtIndex:0]stringByAppendingPathComponent:PLISTNAME];

    *dictionary = [[NSMutableDictionary alloc] initWithContentsOfFile:docPath];

}


- (void)deletePlist

{

    NSFileManager *fileManager = [NSFileManager defaultManager];

    NSArray *array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDirectory, YES);

    NSString *docPath = [[array objectAtIndex:0] stringByAppendingPathComponent:PLISTNAME];

    [fileManager removeItemAtPath:docPath error:nil];

}

@end

- (void)viewDidLoad

{

    [super viewDidLoad];


    //文件读写


    NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] init];

    NSMutableDictionary *dictionary2 = [[NSMutableDictionary alloc] init];

    NSMutableArray *array = [[NSMutableArray alloc] init];

    NSMutableDictionary *dictionary1 = [[NSMutableDictionary alloc] init];

    [dictionary1 setValue:@"001" forKey:@"harewareID"];

    [array addObject:dictionary1];

    [dictionary setValue:array forKey:@"CPU"];   

     self.plist = [[Plist alloc] init];

     //调用写文件

     [self.plist writePlist:dictionary];

     //读文件

    [self.plist readPlist:&dictionary2];

    NSMutableArray *array1 = [[NSMutableArray alloc] init];

    array1 = [dictionary2 objectForKey:@"CPU"];

    NSString *str = [[array1 objectAtIndex:0] objectForKey:@"harewareID"];

    NSLog(@"%@",str);



   //文件删除

  

   [self.plist deletePlist];

    NSMutableDictionary *dictionary3 = [[NSMutableDictionary alloc] init];

    [self.plist readPlist:&dictionary3];

    NSMutableArray *array2 = [[NSMutableArray alloc] init];

    array2 = [dictionary3 objectForKey:@"CPU"];

    NSString *str2 = [[array2 objectAtIndex:0] objectForKey:@"harewareID"];

    NSLog(@"%@",str2);


  //文件内容更改,更改一条数据就是把dictionary内key重写。这里重新插入harewareID


  

    NSMutableDictionary *dictionary6 = [[NSMutableDictionary alloc] init];

    NSMutableDictionary *dictionary5 = [[NSMutableDictionary alloc] init];

    NSMutableArray *array5 = [[NSMutableArray alloc] init];

    NSMutableDictionary *dictionary7 = [[NSMutableDictionary alloc] init];

    [dictionary7 setValue:@"002" forKey:@"harewareID"];

    [array5 addObject:dictionary7];

    [dictionary6 setValue:array5 forKey:@"CPU"];

    [self.plist writePlist:dictionary6];

    [self.plist readPlist:&dictionary5];

    NSMutableArray *array4 = [[NSMutableArray alloc] init];

    array4 = [dictionary5 objectForKey:@"CPU"];

    NSString *str4 = [[array4 objectAtIndex:0] objectForKey:@"harewareID"];

    NSLog(@"%@",str4);

posted on 2015-01-16 20:57  奋进的闹钟  阅读(214)  评论(0编辑  收藏  举报

导航