OC的plist操做


#import <Foundation/Foundation.h>數組

#import "FJDog.h"安全

#define path @"/Users/IOS1601/Desktop/plist文件/plist1.plist"atom

#define path1 @"/Users/IOS1601/Desktop/plist文件/data.plist"spa

#define path2 @"/Users/IOS1601/Desktop/plist文件/plist2.plist".net

int main(int argc, const char * argv[]) {線程

    @autoreleasepool {3d

    //只能存數NSString,NSData,NSData,NSNumber,BOOLcode

        //NSArray(NSMutableArray),NSDictionary(NSMutableDictionary) 其餘類建立的對象不能存儲orm

        //包括系統其餘的類對象

    

        //=========建立plist文件(plist文件裏寫數據)===========

     

        //1.先建立一個數組或者一個字典(注意數組的數組元素和

        //字典的鍵值對的值都只能是plist可以存儲的類型);

        NSDate * date = [NSDate date];//獲取當前時間


        NSArray * array = @[ @"哈哈",date,@1000 ,@NO];

        

        //2.將數組寫入plist文件中(若是這個文件不存在就會建立這個plist文件)

        //若是這個plist文件已經存在,會修改plist文件的內容;

        //參數1:文件路徑(在這裏只能是plist文件的文件路徑)

        //參數2:是不是原子操做(是否支持線程安全)

        [array writeToFile:path atomically:NO];

        

        //3.將字典寫入plist文件中

        NSDictionary *dictionary = @{@"77":@"luhan",

                                     @"7":date

                                     ,@"777":array,

                                     @"7777":@123};

        [dictionary writeToFile:path atomically:NO];

        

        //=========plist文件的內容讀取出來==============

        //若是想要將plist文件讀出來,就要知道plist文件最外層的結構

        //(NSArrayNSDictionary);

        NSDictionary * dict2 = [[NSDictionary alloc]

        initWithContentsOfFile:path1];

        

        //拿到字典中的數組

        NSArray *arr = dict2[@"333"];

        //再拿到數組的第一個元素:

        NSString *name = arr[0];

        NSLog(@"%@",name);

        NSLog(@"%@",dict2);

        

        //最外層是數組

        

        NSArray *array2 = [NSArray arrayWithContentsOfFile:@"/Users/IOS1601/Desktop/plist文件/data1.plist"];

        NSLog(@"%@",array2);

        

        //=======plist不能存儲其餘的數據類型的對象=========

         FJDog *dog = [[FJDog alloc]init];

        dog.name = @"cat";

        //若是數組或者字典中出現了plsit不能存儲的類型的對象

        //plist文件寫入會失敗;

        NSArray *arr2 = @[@"abc",@777,dog];

       

        [arr2 writeToFile:path2 atomically:NO];

        

    }

    return 0;

}

相關文章
相關標籤/搜索