话不多说,直接撸代码

//

// gzhCache.h

// cache

//

// Created by 郭志贺 on 2020/5/27.

// Copyright © 2020 郭志贺. All rights reserved.

//

#import

NS_ASSUME_NONNULL_BEGIN

@interface gzhCache : NSObject

/// 计算缓存大小

+(float)filePath;

/// 清理缓存

+(void)clearCache;

@end

NS_ASSUME_NONNULL_END

//

// gzhCache.m

// cache

//

// Created by 郭志贺 on 2020/5/27.

// Copyright © 2020 郭志贺. All rights reserved.

//

#import "gzhCache.h"

@implementation gzhCache

// 显示缓存大小

+ (float)filePath {

NSString * cachPath = [ NSSearchPathForDirectoriesInDomains ( NSCachesDirectory , NSUserDomainMask , YES ) firstObject ];

return [ self folderSizeAtPath :cachPath];

}

//计算单个文件的大小

+ (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 );

}

//清理缓存

+ (void)clearCache {

NSString * cachPath = [ NSSearchPathForDirectoriesInDomains ( NSCachesDirectory , NSUserDomainMask , YES ) firstObject ];

NSArray * files = [[ NSFileManager defaultManager ] subpathsAtPath :cachPath];

NSLog ( @"cachpath = %@" , cachPath);

for ( NSString * p in files) {

NSError * error = nil ;

NSString * path = [cachPath stringByAppendingPathComponent :p];

if ([[ NSFileManager defaultManager ] fileExistsAtPath :path]) {

[[ NSFileManager defaultManager ] removeItemAtPath :path error :&error];

}

}

[ self performSelectorOnMainThread : @selector (clearCachSuccess) withObject : nil waitUntilDone : YES ];

}

+ (void)clearCachSuccess {

NSLog(@"清理成功");

}

@end

需要查询大小的地方使用:

NSString *str = [NSString stringWithFormat:@"%.2fM",[gzhCache filePath]];

清理的方法调用

[gzhCache clearCache];

以上内容仅代表本菜鸟看法,复制可直接使用。如有不妥之处敬请告知。

好了,到此这篇iOS开发之1行代码实现缓存计算及清除缓存的文章就介绍到这了,更多相关iOS缓存计算及清除缓存内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

ios html清除缓存,iOS开发之1行代码实现缓存计算及清除缓存相关推荐

  1. ios 自定义字体_如何仅用几行代码在iOS应用中创建一致的自定义字体

    ios 自定义字体 by Yuichi Fujiki 藤木雄一 In this article, you'll learn how to create a unified custom look th ...

  2. Android开发之Android studio代码版本回退教程

    1.先看下最初提交的代码 2.咱们来提交两次代码 3.假如此时线上版本出问题了,咱们需要回退到增加强制覆盖命令这一版本怎么办? 方法有两种: 方法一:输入HEAD~2表示回退版本两次 方法二:右击要回 ...

  3. Android开发之git提交代码到GitHub仓库教程

    首先我们想要提交到GitHub要做一些前提工作. 我们得先在AS中登录GitHub账号 先ctrl+art+s打开设置然后输入GitHub账号,点击test,显示成功即可 接下来我们可以分享代码到仓库 ...

  4. 黑进iPhone让手机崩溃重启,只需15行代码:iOS漏洞你可知?

    黑栗子 发自 麦蒿寺 量子位 出品 | 公众号 QbitAI 有人找到了iOS系统的弱点. TechCrunch报道,一个名叫Sabri Haddouche的网络安全研究人员发推特说,只要15行CSS ...

  5. IOS开发之UI基础LOL英雄展示-15

    IOS开发之UI基础LOL英雄展示-15 // // ViewController.m // 15-英雄展示-单组数据 // // Created by 鲁军 on 2021/2/3. //#impo ...

  6. iOS开发之ARC(自动引用计数)

    iOS开发之ARC(自动引用计数) 英文原文:Automatic Reference Counting on iOS 参与翻译(4人): 纶巾客, showme, 李远超, 王宇龙 自动引用计数(AR ...

  7. iOS开发之Objective-C(中级篇)-李飞-专题视频课程

    iOS开发之Objective-C(中级篇)-307人已学习 课程介绍         该系列课程详细的讲解了iOS开发过程中的常用知识点及难点.在此基础上面,还扩充讲解了数据库的和H5的知识.如果能 ...

  8. 蓝牙开发之 IOS ANCS

    目录 什么是 ANCS ANCS 介绍(Introduction) ANCS 字节序和字节码(Endianness and String Encoding) 依赖性(Dependencies) 术语( ...

  9. iOS开发之UI开发(UITableView)

    UITableView 继承自UIScrollView,性能极佳 UITableView的两种样式 UITableViewStylePlain列表样式 UITableViewStyleGrouped ...

最新文章

  1. Python计算机视觉——SIFT特征
  2. 【Android 应用开发】BluetoothDevice详解
  3. Mysql高性能优化规范建议,太厉害了!
  4. 两边填上相同的数_二年级必考题,在括号里填上相同的数~
  5. 前端见微知著AngularJS备忘篇:温故而知新,可以为师矣
  6. JS页面跳转页面大全
  7. Map集合常见面试题
  8. 15款好用的web开源安全测试工具等你来
  9. 深度学习知识点总结-激活函数
  10. 极客时间和极客学院_极客需要告诉我们的父母有关安全可靠地在线购物的信息
  11. 江苏省数学建模省赛答辩准备
  12. 服务器怎么使用无线网卡,无线上网卡怎么用
  13. 东莞耳机工厂告诉你,多唛降噪是什么!
  14. 基于单片机定时闹钟设计
  15. TCP/IP与UDP
  16. Python–cookbook–1.数据结构与算法
  17. 国内外差价悬殊,催火“代购一族”
  18. 亚马逊儿童背包 CPSIA,CSPA邻苯二甲酸盐和镉 CPC测试
  19. java中输入字符串并输入每个汉字的ASC码
  20. 基本的计算机理论知识试题及答案,计算机的基础知识试题及答案

热门文章

  1. java当中显示紫色_在java中将深色变为亮色
  2. everything便携版和安装版区别_什么是超极本?超极本和笔记本的区别科普知识...
  3. matlab是那个国家,这是一个老外写的利用曲率来识别硬币的MATLAB程序。作者所在国家的硬币偏黄色,拍摄的时候反光比较少...
  4. foxmail邮箱日历怎么新建事务
  5. QQ浏览器如何更改截图路径
  6. 腾讯视频视频下载_如何下载腾讯视频
  7. 腾讯视频免费下载安装_怎样下载腾讯视频里的视频
  8. 用户密码到底要怎样存储?
  9. 北交大计算机学院复试经验,2014考研复试:过来人考研复试经验谈-北交大计算机系...
  10. php 三个点 三角形面积,知道三角形三个顶点坐标,求面积,我觉得我的没错,但未通过,麻烦大佬帮忙看下...