最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

IOS 基本文件操作實(shí)例詳解

 更新時間:2017年06月28日 09:31:34   投稿:lqh  
這篇文章主要介紹了IOS 基本文件操作實(shí)例詳解 的相關(guān)資料,需要的朋友可以參考下

IOS 基本文件操作實(shí)例詳解

在iOS的App沙盒中,Documents和Library/Preferences都會被備份到iCloud,因此只適合放置一些記錄文件,例如plist、數(shù)據(jù)庫文件。緩存一般放置到Library/Caches,tmp文件夾會被系統(tǒng)隨機(jī)清除,不適宜防止數(shù)據(jù)。

【圖片緩存的清除】

在使用SDWebImage時,圖片被大量的緩存,有時需要獲取緩存的大小以及清除緩存。

要獲取緩存大小,使用SDImageCache單例的getSize方法拿到byte為單位的緩存大小,注意計(jì)算時按1K=1000計(jì)算。

拿到M為單位的文件大小的方法,如下:

double size = [[SDImageCache sharedImageCache] getSize] / 1000.0 / 1000.0; 

要清除緩存,調(diào)用clearDisk方法,分為有回調(diào)和無回調(diào)。

因?yàn)榍宄彺娴臅r間可能會比較長,因此應(yīng)該用指示器予以指示。

[[SDImageCache sharedImageCache] clearDiskOnCompletion:^{ 
     
  // 清除完畢的處理。 
     
}]; 

【文件夾大小計(jì)算】

使用NSFileManager可以拿到文件的屬性,如果文件是目錄,拿到的FileSize是沒有意義的,因?yàn)槟夸浀拇笮⌒枰f歸計(jì)算,不宜作為一個靜態(tài)屬性。因此只有文件的FileSize屬性才是文件的大小。

為了計(jì)算文件夾的大小,應(yīng)該遞歸內(nèi)部所有文件,還好蘋果官方集成了遞歸方法,通過遞歸可以拿到所有的目錄和所有的文件,只要利用FileManager的方法判斷是否是文件,如果是文件則拿到FileSize屬性累加,就能計(jì)算出文件夾的大小,如下:

需要注意的是遍歷出來的文件是以Caches為根目錄的,因此獲取屬性時應(yīng)該拼接出全路徑。

- (void)fileSize{ 
 
  NSFileManager *manager = [NSFileManager defaultManager]; 
   
  NSString *cachePath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject]; 
   
  NSArray *files = [manager subpathsOfDirectoryAtPath:cachePath error:nil]; // 遞歸所有子路徑 
   
  NSInteger totalSize = 0; 
   
  for (NSString *filePath in files) { 
    NSString *path = [cachePath stringByAppendingPathComponent:filePath]; 
    // 判斷是否為文件 
    BOOL isDir = NO; 
    [manager fileExistsAtPath:path isDirectory:&isDir]; 
    if (!isDir) { 
      NSDictionary *attrs = [manager attributesOfItemAtPath:path error:nil]; 
      totalSize += [attrs[NSFileSize] integerValue]; 
    } 
  } 
   
  NSLog(@"%d",totalSize); 
   
} 


感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • iOS實(shí)現(xiàn)相冊多選圖片上傳功能

    iOS實(shí)現(xiàn)相冊多選圖片上傳功能

    這篇文章主要為大家詳細(xì)介紹了iOS實(shí)現(xiàn)相冊多選圖片上傳功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • IOS UI學(xué)習(xí)教程之區(qū)分NSBundle和NSURL(讀取文件、寫入文件)

    IOS UI學(xué)習(xí)教程之區(qū)分NSBundle和NSURL(讀取文件、寫入文件)

    這篇文章主要為大家詳細(xì)介紹了IOS UI學(xué)習(xí)教程之區(qū)分NSBundle和NSURL,如何讀取、寫入文件,感興趣的小伙伴們可以參考一下
    2016-03-03
  • iOS 11 使用兩種方法替換(Method Swizzling)去掉導(dǎo)航欄返回按鈕的文字

    iOS 11 使用兩種方法替換(Method Swizzling)去掉導(dǎo)航欄返回按鈕的文字

    這篇文章主要介紹了iOS 11 使用方法替換(Method Swizzling)去掉導(dǎo)航欄返回按鈕的文字,需要的朋友可以參考下
    2018-05-05
  • 詳解iOS平臺調(diào)用后臺接口的正確姿勢

    詳解iOS平臺調(diào)用后臺接口的正確姿勢

    這篇文章主要介紹了詳解iOS平臺調(diào)用后臺接口的正確姿勢,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Flutter Widgets粘合劑CustomScrollView NestedScrollView滾動控件

    Flutter Widgets粘合劑CustomScrollView NestedScrollVie

    這篇文章主要為大家介紹了Flutter Widgets粘合劑CustomScrollView NestedScrollView滾動控件示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • iOS 圖片壓縮方法的示例代碼

    iOS 圖片壓縮方法的示例代碼

    本篇文章主要介紹了iOS 圖片壓縮方法的示例代碼,主要有兩種壓縮圖片的方法,有興趣的可以了解一下,有興趣的可以了解一下。
    2017-01-01
  • 詳細(xì)整理iOS中UITableView的性能優(yōu)化

    詳細(xì)整理iOS中UITableView的性能優(yōu)化

    最近在微博上看到一個很好的開源項(xiàng)目,是關(guān)于如何優(yōu)化UITableView的,加上正好最近也在優(yōu)化項(xiàng)目中的類似朋友圈功能這塊,思考了很多關(guān)于UITableView的優(yōu)化技巧,所以決定詳細(xì)的整理下對優(yōu)化UITableView的理解,需要的朋友們可以參考借鑒。
    2017-03-03
  • iOS新版微信底部工具欄遮擋問題完美解決

    iOS新版微信底部工具欄遮擋問題完美解決

    這篇文章主要介紹了iOS新版微信底部工具欄遮擋問題完美解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • 詳解iOS的UI開發(fā)中控制器的創(chuàng)建方法

    詳解iOS的UI開發(fā)中控制器的創(chuàng)建方法

    這篇文章主要介紹了iOS的UI開發(fā)中控制器的創(chuàng)建方法,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下
    2015-11-11
  • iOS開發(fā)定時器的三種方法分享

    iOS開發(fā)定時器的三種方法分享

    相信在大家開發(fā)過程中,常常需要在某個時間后執(zhí)行某個方法,或者是按照某個周期一直執(zhí)行某個方法。在這個時候,我們就需要用到定時器。然而,在iOS中有很多方法完成以上的任務(wù),到底有多少種方法呢?下面就通過這篇文章來一起學(xué)習(xí)學(xué)習(xí)吧。
    2016-09-09

最新評論

哈尔滨市| 巢湖市| 武平县| 梁河县| 萨迦县| 永清县| 融水| 云梦县| 丰都县| 隆化县| 通城县| 望奎县| 泰和县| 宜都市| 普陀区| 湟源县| 双辽市| 玛多县| 承德市| 祁连县| 宁明县| 莆田市| 永定县| 德兴市| 广德县| 峨边| 孝义市| 仁寿县| 昌邑市| 通辽市| 贵定县| 仁怀市| 鄂托克旗| 灵石县| 尼玛县| 和林格尔县| 揭西县| 泌阳县| 同江市| 同仁县| 高平市|