IOS-Plist檔案儲存體(1),iosplist檔案

來源:互聯網
上載者:User

IOS-Plist檔案儲存體(1),iosplist檔案

1.什麼是檔案系統?

IOS中每個應用都有自己的檔案系統,並有相應的存取權限,一般分為

~/Documents/

~/tmp/

~/Library/Caches/

~/Library/Preferences/-------鍵值對,不用關心檔案路徑。

其路徑的擷取方式為

<span style="color:#999999;">{    //擷取主目錄    NSString *path=NSHomeDirectory();    NSString *docPath=[path stringByAppendingPathComponent:@"Documents"];    NSLog(@"%@",docPath);    //擷取檔案目錄    NSArray *DocumentPath=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSAllDomainsMask, YES);    //    NSLog(@"%@",DocumentPath[0]);    //擷取緩衝目錄    NSArray *cachePath=NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSAllDomainsMask, YES);    //    NSLog(@"%@",cachePath[0]);    //擷取臨時目錄    NSString *temp=NSTemporaryDirectory();    //    NSLog(@"%@",temp);}</span>


Plist檔案只能儲存NSString NSNumber NSData NSArray NSDictionary的內容,其檔案儲存體為xml格式

NSArray儲存到Documents中:

    NSArray *arr=@[@"name",@"age",@"height"];    NSString *path=NSHomeDirectory();    NSString *docPath=[path stringByAppendingPathComponent:@"Documents"];    NSString *filepath=[docPath stringByAppendingPathComponent:@"/aa.plist"];    //把array儲存到plist檔案中    [arr writeToFile:filepath atomically:YES];    //從檔案路徑讀取為array    NSArray *arr2=[NSArray arrayWithContentsOfFile:filepath];

NSDictionary儲存到Cache中:

NSDictionary *dic=@{@"name":@"lean",@"age":@24,@"height":@172 };    NSArray *dicArr=NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSAllDomainsMask, YES);    NSLog(@"%@",dicArr[0]);    NSString *dirPath=dicArr[0];    NSString *filePath=[dirPath stringByAppendingPathComponent:@"dic.plist"];    //把Dictionary儲存到plist檔案中    [dic writeToFile:filePath atomically:YES];    //從檔案路徑讀取為Dictionary    NSDictionary *dic2=[NSDictionary dictionaryWithContentsOfFile:filePath ];

NSData讀取圖片:

//讀寫圖片吧能直接儲存 只能通過NSData來儲存。    //以下例子為從UIImageView中隱藏檔並在另一個控制項中讀取顯示    NSArray *arr=NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSAllDomainsMask, YES);    NSLog(@"%@",arr[0]);    NSString *cachePath=arr[0];    NSString *filePath=[cachePath stringByAppendingPathComponent:@"image.plist"];    UIImage *image=[self.a image];    NSData *data=UIImageJPEGRepresentation(image,1);    [data writeToFile:filePath atomically:YES];        NSData *data2=[NSData dataWithContentsOfFile:filePath];    UIImage *image2=[UIImage imageWithData:data2 ];    self.b.image=image2;






ios編程:plist檔案中是否可以寫邏輯運算子應該吧plist檔案只儲存些資料試試行了
iOS開發:Plist檔案讀寫。1、讀取+寫入plist;2、根據plist節點內容建立UITab//擷取plist地址

NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"UpgradeDataArray" ofType:@"plist"];

NSMutableDictionary *dataDic = [[NSMutableDictionary alloc] initWithContentsOfFile:plistPath]; //根據存入類型取出對應資料

//添加項內容

[dataDic setObject:arr forKey:@"upgradeData"];

//擷取應用程式沙箱Documents目錄

NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES);

NSString *plistPath1 = [paths objectAtIndex:0];

//得完整檔案名稱

NSString *filename=[plistPath1 stringByAppendingPathComponent:@"UpgradeDataArray.plist"];

//輸入寫入

BOOL fl = [dataDic writeToFile:filename atomically:YES]; //寫入

提問容易回答易且問且採納

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.