亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

iOS開發(fā)中對(duì)文件目錄的訪問及管理的基本方法小結(jié)

 更新時(shí)間:2015年10月20日 09:30:47   作者:doctorhsly  
這篇文章主要介紹了iOS開發(fā)中對(duì)文件目錄的訪問及管理的基本方法小結(jié),代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下

文件目錄的訪問

最簡(jiǎn)單的:(由于是沙盒關(guān)系,沒有文件夾概念的)

復(fù)制代碼 代碼如下:

UIImage* image = [UIImage imageNamed:@"11.png"];

這個(gè)已經(jīng)是相對(duì)app里面打包好的路徑,不需要額外添加路徑。


還有一種就是需要指定文件路徑的:

需要用到NSBundle.

復(fù)制代碼 代碼如下:

[[NSBundle mainBundle] resourcePath],這個(gè)就是程序的打包后的路徑。

如果需要指定路徑,就要這樣寫:

你也可自己拼接:

復(fù)制代碼 代碼如下:

NSString* path = [NSStringstringWithFormat:@"%@/%@/%@",[[NSBundlemainBundle] resourcePath],@"document",@"aaa.txt"];

或者直接:
復(fù)制代碼 代碼如下:

NSString* path = [[NSBundle mainBundle] pathForResource:@"aaa" ofType:@"png"];

一般來(lái)說(shuō)應(yīng)用程序有3個(gè)目錄

Documents,Library,tmp

現(xiàn)在apple不允許把大數(shù)據(jù)保存在documents文檔,如果你想把視頻什么的保存在documents文檔里面,需要備份到icould比較麻煩。

一般窩的做法就是保存在Library的caches目錄下面(不知道是否合理:))

tmp目錄的話,保存一些臨時(shí)文件,在退出程序的時(shí)候你可以把里面的緩存內(nèi)容刪除。


在應(yīng)用程序中獲得自己的documents目錄:

復(fù)制代碼 代碼如下:

NSArray * paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);NSString * documentDirectory = [paths objectAtIndex:0];

在上面的基礎(chǔ)上,獲得一個(gè)完整的文件路徑和名字:
復(fù)制代碼 代碼如下:

NSString * file = [documentDirectory stringByAppendingPathComponent:@"file1.txt"];

這就可以用file來(lái)創(chuàng)建,讀取,和寫入文件。

文件目錄管理
下面來(lái)看一些常用的文件目錄管理方法
1、常見的NSFileManager文件方法

復(fù)制代碼 代碼如下:

-(NSData *)contentsAtPath:path  //從一個(gè)文件讀取數(shù)據(jù)


-(BOOL)createFileAtPath: path contents:(NSData *)data attributes:attr  //向一個(gè)文件寫入數(shù)據(jù)


-(BOOL)removeItemAtPath:path error:err  //刪除一個(gè)文件


-(BOOL)moveItemAtPath:from toPath:to error:err  //重命名或者移動(dòng)一個(gè)文件(to不能是已存在的)

-(BOOL)copyItemAtPath:from toPath:to error:err  //復(fù)制文件(to不能是已存在的)


-(BOOL)contentsEqualAtPath:path andPath:path2  //比較兩個(gè)文件的內(nèi)容


-(BOOL)fileExistAtPath:path  //測(cè)試文件是否存在


-(BOOL)isReadableFileAtPath:path  //測(cè)試文件是否存在,并且是否能執(zhí)行讀操作  


-(BOOL)isWriteableFileAtPath:path  //測(cè)試文件是否存在,并且是否能執(zhí)行寫操作  


-(NSDictionary *)attributesOfItemAtPath:path error:err  //獲取文件的屬性  


-(BOOL)setAttributesOfItemAtPath:attr error:err  //更改文件的屬性


2.使用目錄
復(fù)制代碼 代碼如下:

-(NSString *)currentDirectoryPath  //獲取當(dāng)前目錄


-(BOOL)changeCurrentDirectoryPath:path  //更改當(dāng)前目錄


-(BOOL)copyItemAtPath:from toPath:to error:err  //復(fù)制目錄結(jié)構(gòu)(to不能是已存在的)


-(BOOL)createDirectoryAtPath:path withIntermediateDirectories:(BOOL)flag attribute:attr  //創(chuàng)建一個(gè)新目錄


-(BOOL)fileExistAtPath:path isDirectory:(BOOL*)flag  //測(cè)試文件是不是目錄(flag中儲(chǔ)存結(jié)果YES/NO)


-(NSArray *)contentsOfDirectoryAtPath:path error:err  //列出目錄內(nèi)容


-(NSDirectoryEnumerator *)enumeratorAtPath:path  //枚舉目錄的內(nèi)容


-(BOOL)removeItemAtPath:path error:err  //刪除空目錄


-(BOOL)moveItemAtPath:from toPath:to error:err   //重命名或移動(dòng)一個(gè)目錄(to不能是已存在的)


3、常用路徑工具方法
復(fù)制代碼 代碼如下:

+(NSString *)pathWithComponens:components  //根據(jù)components中的元素構(gòu)造有效路徑


-(NSArray *)pathComponents  //析構(gòu)路徑,獲得組成此路徑的各個(gè)部分


-(NSString *)lastPathComponent  //提取路徑的最后一個(gè)組成部分
-(NSString *)pathExtension  //從路徑的最后一個(gè)組成部分中提取其擴(kuò)展名


-(NSString *)stringByAppendingPathComponent:path  //將path添加到現(xiàn)有路徑的末尾


-(NSString *)stringByAppendingPathExtension:ext  //將指定的擴(kuò)展名添加到路徑的最后一個(gè)組成部分

-(NSString *)stringByDeletingLastPathComponent  //刪除路徑的最后一個(gè)組成部分


-(NSString *)stringByDeletingPathExtension  //從文件的最后一部分刪除擴(kuò)展名

-(NSString *)stringByExpandingTileInPath   //將路徑中代字符擴(kuò)展成用戶主目錄(~)或指定用戶的主目錄(~user)

-(NSString *)stringByresolvingSymlinksInPath  //嘗試解析路徑中的符號(hào)鏈接

-(NSString *)stringByStandardizingPath  //通過嘗試解析~、..(父目錄符號(hào))、.(當(dāng)前目錄符號(hào))和符號(hào)鏈接來(lái)標(biāo)準(zhǔn)化路徑


4、常用的路徑工具函數(shù)
復(fù)制代碼 代碼如下:

NSString* NSUserName(void)  //返回當(dāng)前用戶的登錄名


NSString* NSFullUserName(void)  //返回當(dāng)前用戶的完整用戶名


NSString* NSHomeDirectory(void)  //返回當(dāng)前用戶主目錄的路徑


NSString* NSHomeDirectoryForUser(NSString* user)  //返回用戶user的主目錄


NSString* NSTemporaryDirectory(void)  //返回可用于創(chuàng)建臨時(shí)文件的路徑目錄


5、常用的IOS目錄
復(fù)制代碼 代碼如下:

Documents(NSDocumentDirectory)  //用于寫入應(yīng)用相關(guān)數(shù)據(jù)文件的目錄,在ios中寫入這里的文件能夠與iTunes共享并訪問,存儲(chǔ)在這里的文件會(huì)自動(dòng)備份到云端

Library/Caches(NSCachesDirectory)  //用于寫入應(yīng)用支持文件的目錄,保存應(yīng)用程序再次啟動(dòng)需要的信息。iTunes不會(huì)對(duì)這個(gè)目錄的內(nèi)容進(jìn)行備份

tmp(use NSTemporaryDirectory())  //這個(gè)目錄用于存放臨時(shí)文件,只程序終止時(shí)需要移除這些文件,當(dāng)應(yīng)用程序不再需要這些臨時(shí)文件時(shí),應(yīng)該將其從這個(gè)目錄中刪除

Library/Preferences  //這個(gè)目錄包含應(yīng)用程序的偏好設(shè)置文件,使用 NSUserDefault類進(jìn)行偏好設(shè)置文件的創(chuàng)建、讀取和修改


  • iOS開發(fā)之如何給View添加指定位置的邊框線詳解

    iOS開發(fā)之如何給View添加指定位置的邊框線詳解

    這篇文章主要給大家介紹了iOS開發(fā)之如何給View添加指定位置的邊框線的相關(guān)資料,給view加邊框很容易,重點(diǎn)是如何給指定邊框加邊框,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-10-10
  • iOS開發(fā)之詳談屬性設(shè)置readwrite、readonly、retain、copy、assign、nonatomic

    iOS開發(fā)之詳談屬性設(shè)置readwrite、readonly、retain、copy、assign、nonatomic

    這篇文章主要介紹了iOS開發(fā)之詳談屬性設(shè)置readwrite、readonly、retain、copy、assign、nonatomic的相關(guān)資料,需要的朋友可以參考下
    2015-10-10
  • iOS購(gòu)物分類模塊的實(shí)現(xiàn)方案

    iOS購(gòu)物分類模塊的實(shí)現(xiàn)方案

    這篇文章主要為大家詳細(xì)介紹了iOS購(gòu)物分類模塊的實(shí)現(xiàn)方案,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-02-02
  • UILabel顯示定時(shí)器文本跳動(dòng)問題的解決方法

    UILabel顯示定時(shí)器文本跳動(dòng)問題的解決方法

    這篇文章主要給大家介紹了關(guān)于UILabel顯示定時(shí)器文本跳動(dòng)問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)各位iOS開發(fā)者們具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • iOS 三級(jí)下拉菜單功能實(shí)現(xiàn)

    iOS 三級(jí)下拉菜單功能實(shí)現(xiàn)

    多級(jí)下拉菜單在很多APP中都能應(yīng)用到,這篇文章主要介紹了iOS 多級(jí)下拉菜單功能實(shí)現(xiàn),具有一定的參考價(jià)值,有興趣的可以了解下。
    2017-03-03
  • IOS實(shí)現(xiàn)點(diǎn)擊滑動(dòng)抽屜效果

    IOS實(shí)現(xiàn)點(diǎn)擊滑動(dòng)抽屜效果

    這篇文章主要為大家詳細(xì)介紹了IOS實(shí)現(xiàn)點(diǎn)擊滑動(dòng)抽屜效果的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Objective-C基礎(chǔ) 自定義對(duì)象歸檔詳解及簡(jiǎn)單實(shí)例

    Objective-C基礎(chǔ) 自定義對(duì)象歸檔詳解及簡(jiǎn)單實(shí)例

    這篇文章主要介紹了Objective-C基礎(chǔ) 自定義對(duì)象歸檔詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • IOS CocoaPods詳細(xì)使用方法

    IOS CocoaPods詳細(xì)使用方法

    自從有了CocoaPods以后,這些繁雜的工作就不再需要我們親力親為了,只需要我們做好少量的配置工作,CocoaPods會(huì)為我們做好一切
    2016-09-09
  • iOS 禁止按鈕在一定時(shí)間內(nèi)連續(xù)點(diǎn)擊

    iOS 禁止按鈕在一定時(shí)間內(nèi)連續(xù)點(diǎn)擊

    本文主要介紹了iOS中禁止按鈕在一定時(shí)間內(nèi)連續(xù)點(diǎn)擊的方法,具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-02-02
  • 最新評(píng)論