#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文件最外層的結構
//(NSArray和NSDictionary);
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;
}