IOS:OC-沙盒處理

1.新建類 “sandBox”
在sandBox.h中
//寫接口

pragma mark --- (封裝沙河路徑方法)

//獲取document文件目錄
+(NSString *)getDocumentDirectory;

//獲取library目錄
+(NSString *)getLibraryDirectionary;
//獲取library/Caches目錄
+(NSString *)getCachesDirectionary;
//獲取library/Preferences
+(NSString *)getPreferencesDirectory;
//獲取temp文件路徑
+(NSString *)getTempDirectory;
//獲取xxxx.app文件路徑
+(NSString *)getAppPath;
在sandBox.m中

pragma mark --- (封裝沙河路徑方法)

//獲取document文件目錄
//將程序當(dāng)中建立的或者在程序中瀏覽的數(shù)據(jù)保存在這
+(NSString *)getDocumentDirectory{

/*
 三個參數(shù):
 第一個參數(shù):枚舉(具體要查看的某個文件目錄【進(jìn)入的文件夾】)
 第二個參數(shù): NSUserDomainMask用戶主目錄
 第三個參數(shù):YES 設(shè)置為表示展開完整路徑
 
 NSSearchPathForDirectoriesInDomains代表查找沙盒路徑幸撕,返回值是一個數(shù)組,該書中當(dāng)中只有一個元素外臂,這個元素就是路徑
 */

NSString * documentPath=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)firstObject];
return documentPath;

}

//獲取library目錄
//保存的是程序默認(rèn)設(shè)置坐儿,或者一些狀態(tài)信息
+(NSString *)getLibraryDirectionary{

  return [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES)lastObject];

}
//獲取library/Caches目錄
//存放地是緩存文件。宋光。音頻視頻
+(NSString *)getCachesDirectionary{

return [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)lastObject];

}
//獲取library/Preferences
//偏好設(shè)置文件app 偏好設(shè)置存儲在這里挑童,例如:是否是否訪問圖片,是否訪問地理位置
+(NSString *)getPreferencesDirectory{

//獲取到library/Preferences目錄

NSArray *path2= NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
//是將前面路徑格式和后面的字符串給拼接在一起
//并且已路徑格式返回
NSString * path1=[[path2 objectAtIndex:0]stringByAppendingString:@"Preference"];
return path1;
//return [NSSearchPathForDirectoriesInDomains(NSPreferencePanesDirectory, NSUserDomainMask, YES)];

}
//獲取temp文件路徑
+(NSString *)getTempDirectory{

return NSTemporaryDirectory();

}
//獲取xxxx.app文件路徑
+(NSString *)getAppPath{

return [[NSBundle mainBundle]resourcePath];

}

  1. ViewController.m
  • (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    #warning --- 簡單對象的讀寫:
    //簡單對象:《字符串/數(shù)組/字典/數(shù)據(jù)(data)》
    [self writefile];
    [self myFileManager];

}

pragma mark--- 文件管理 ---創(chuàng)建---

-(void)myFileManager{
//初始化NSFileManager
//defaultManager方法為單例方法
NSFileManager * manager = [NSFileManager defaultManager];
//獲取跟路徑
NSString * path = NSHomeDirectory();

path = [path stringByAppendingPathComponent:@"text/myApp"];

//創(chuàng)建目錄
[manager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil];

//沙盒中創(chuàng)建文件

// NSString * path2=[path stringByAppendingString:@"text2/App"];
//
// [manager createDirectoryAtPath:path2 withIntermediateDirectories:YES attributes:nil error:nil];
// NSLog(@"%@",path);

pragma mark ---文件管理 ---添加:

path =[path stringByAppendingPathComponent:@"fuchuan.txt"];

// NSLog(@"%@",path);
//寫入內(nèi)容
NSString * string = @"我是向日葵";
//將文本寫入txt中
BOOL result=[string writeToFile:path atomically:YES encoding:NSUTF8StringEncoding error:nil];
if (result){
NSLog(@"寫入成功%@",path);
}
else{
NSLog(@"失敗");
}
}

warning --- 簡單對象的讀寫:

-(void)writefile{
/*
//字符串寫入
//首先獲取document文件路徑
NSArray * documentArray = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
//獲取首元素
NSString * documentpath=documentArray[0];
//文件夾名字<字符串.txt>
documentpath=[documentpath stringByAppendingString:@"/zifuchuan.txt"];

//NSLog(@"%@",documentpath);
//文本內(nèi)容
NSString *string =@"我有一百種方法讓你愛上我跃须,其中一種就是可勁調(diào)戲你";
//將文本內(nèi)容寫入的doucument的文件當(dāng)中
BOOL result =[string writeToFile:documentpath atomically:YES encoding:NSUTF8StringEncoding error:nil];
if(result){
    NSLog(@"寫入成功站叼,數(shù)據(jù)就是%@",documentpath);
}
else{
    NSLog(@"數(shù)據(jù)寫入失敗");
}
*/
/*
//數(shù)組寫入到沙盒文件中

//獲取文件路徑
NSString * document=[sandBox getDocumentDirectory];

//在document下拼接文件名;
NSString * path =[document stringByAppendingString:@"array.plist"];
//創(chuàng)建數(shù)組
NSArray * arrayFile = @[@"華晨宇",@"吳亦凡",@"宋仲基",@"向日葵"];
//將數(shù)組寫入到documents文件當(dāng)中
[arrayFile writeToFile:path atomically:YES];
NSLog(@"****%@",path);
 */
/*
//將字典寫入到沙盒文件中
//寫字典
//獲取document路徑
NSString * dicPath = [sandBox getDocumentDirectory];
//在document下拼接文件名菇民;
NSString * path=[dicPath stringByAppendingPathComponent:@"zidian.plist"];
NSDictionary * dict=@{@"name":@"小花"};
 //將字典寫入到documents文件當(dāng)中
[dict writeToFile:path atomically:YES];
NSLog(@"%@",path);
 */

//將數(shù)據(jù)寫入到沙盒文件中
//獲取路徑并創(chuàng)建文件
NSString * dataPath=[[sandBox getDocumentDirectory]stringByAppendingPathComponent:@"data.a"];
//
NSString *datastr = @"阿爾卑斯";
//將string轉(zhuǎn)化為NSData類型
NSData * mydata= [datastr dataUsingEncoding:NSUTF8StringEncoding];
//寫入到文件中
[mydata writeToFile:dataPath atomically:YES];
NSLog(@"")

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末尽楔,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子第练,更是在濱河造成了極大的恐慌阔馋,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娇掏,死亡現(xiàn)場離奇詭異呕寝,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)婴梧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評論 3 394
  • 文/潘曉璐 我一進(jìn)店門下梢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人塞蹭,你說我怎么就攤上這事孽江。” “怎么了?”我有些...
    開封第一講書人閱讀 163,875評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長母剥。 經(jīng)常有香客問我,道長这刷,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,441評論 1 293
  • 正文 為了忘掉前任娩井,我火速辦了婚禮暇屋,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘撞牢。我一直安慰自己率碾,他們只是感情好叔营,可當(dāng)我...
    茶點故事閱讀 67,488評論 6 392
  • 文/花漫 我一把揭開白布屋彪。 她就那樣靜靜地躺著所宰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪畜挥。 梳的紋絲不亂的頭發(fā)上仔粥,一...
    開封第一講書人閱讀 51,365評論 1 302
  • 那天,我揣著相機(jī)與錄音蟹但,去河邊找鬼躯泰。 笑死,一個胖子當(dāng)著我的面吹牛华糖,可吹牛的內(nèi)容都是我干的麦向。 我是一名探鬼主播,決...
    沈念sama閱讀 40,190評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼客叉,長吁一口氣:“原來是場噩夢啊……” “哼诵竭!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起兼搏,我...
    開封第一講書人閱讀 39,062評論 0 276
  • 序言:老撾萬榮一對情侶失蹤卵慰,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后佛呻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體裳朋,經(jīng)...
    沈念sama閱讀 45,500評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,706評論 3 335
  • 正文 我和宋清朗相戀三年吓著,在試婚紗的時候發(fā)現(xiàn)自己被綠了鲤嫡。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,834評論 1 347
  • 序言:一個原本活蹦亂跳的男人離奇死亡绑莺,死狀恐怖泛范,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情紊撕,我是刑警寧澤罢荡,帶...
    沈念sama閱讀 35,559評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站对扶,受9級特大地震影響区赵,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜浪南,卻給世界環(huán)境...
    茶點故事閱讀 41,167評論 3 328
  • 文/蒙蒙 一笼才、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧络凿,春花似錦骡送、人聲如沸昂羡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽虐先。三九已至,卻和暖如春派敷,著一層夾襖步出監(jiān)牢的瞬間蛹批,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評論 1 269
  • 我被黑心中介騙來泰國打工篮愉, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留腐芍,地道東北人。 一個月前我還...
    沈念sama閱讀 47,958評論 2 370
  • 正文 我出身青樓试躏,卻偏偏與公主長得像猪勇,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子颠蕴,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,779評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 每個iOS應(yīng)用都有自己的應(yīng)用沙盒(應(yīng)用沙盒就是文件系統(tǒng)目錄)泣刹,與其他文件系統(tǒng)隔離。應(yīng)用必須待在自己的沙盒里裁替,其他應(yīng)...
    彬至睢陽閱讀 652評論 0 0
  • 27项玛、ViewController的didReceiveMemoryWarning是在什么時候調(diào)用的?默認(rèn)的操作是...
    煙雨平生花飛舞閱讀 577評論 0 1
  • 沙盒 Plist Preference偏好設(shè)置 NSKeyedArchiver歸檔 / NSKeyedUnarch...
    追風(fēng)者366閱讀 3,346評論 0 6
  • 提到數(shù)據(jù)持久化 我們必須得先了解IOS程序的沙盒機(jī)制(sandBox)弱判。 1.IOS沙盒機(jī)制介紹 iOS應(yīng)用程...
    _Half______閱讀 12,536評論 4 24
  • 我把你的記憶冰凍在北極星 可為何襟沮,為何 午夜夢回時 淚水在一霎那決堤 你狹長的眉毛和 溫柔如水的目光 怎會在穿越十...
    清芷閱讀 1,503評論 5 11