iOS 清理緩衝功能的實現第二種方法

來源:互聯網
上載者:User

標籤:

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 /** *  清理緩衝第二種方法 * *  @param sender <#sender description#> */- (void)clearCache:(id)sender{    //徹底清除緩衝第一種方法    UIButton * button = sender;    [button setTitle:@"清理完畢" forState:UIControlStateNormal];    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);    NSString *path = [paths lastObject];         NSString *str = [NSString stringWithFormat:@"緩衝已清除%.1fM", [self folderSizeAtPath:path]];    NSLog(@"%@",str);    NSArray *files = [[NSFileManager defaultManager] subpathsAtPath:path];    for (NSString *p in files) {        NSError *error;        NSString *Path = [path stringByAppendingPathComponent:p];        if ([[NSFileManager defaultManager] fileExistsAtPath:Path]) {            [[NSFileManager defaultManager] removeItemAtPath:Path error:&error];        }    }}/** *  計算單個檔案大小 */- (long long) fileSizeAtPath:(NSString*) filePath{    NSFileManager* manager = [NSFileManager defaultManager];    if ([manager fileExistsAtPath:filePath]){        return [[manager attributesOfItemAtPath:filePath error:nil] fileSize];    }    return 0;} /** *  計算目錄大小  遍曆檔案夾獲得檔案夾大小,返回多少M */- (float ) folderSizeAtPath:(NSString*) folderPath{    NSFileManager* manager = [NSFileManager defaultManager];    if (![manager fileExistsAtPath:folderPath]) return 0;    NSEnumerator *childFilesEnumerator = [[manager subpathsAtPath:folderPath] objectEnumerator];    NSString* fileName;    long long folderSize = 0;    while ((fileName = [childFilesEnumerator nextObject]) != nil){        NSString* fileAbsolutePath = [folderPath stringByAppendingPathComponent:fileName];        folderSize += [self fileSizeAtPath:fileAbsolutePath];    }    return folderSize/(1024.0*1024.0);}

iOS 清理緩衝功能的實現第二種方法

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.