OC中根据文件路径获取文件大小

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

NSInteger  size =  [self getSizeOfFilePath:cachePath];  // 文件大小

-(NSInteger)getSizeOfFilePath:(NSString *)filePath{

/** 定义记录大小 */

NSInteger totalSize = 0;

/** 创建一个文件管理对象 */

NSFileManager * manager = [NSFileManager defaultManager];

/**获取文件下的所有路径包括子路径 */

NSArray * subPaths = [manager subpathsAtPath:filePath];

/** 遍历获取文件名称 */

for (NSString * fileName in subPaths) {

/** 拼接获取完整路径 */

NSString * subPath = [filePath stringByAppendingPathComponent:fileName];

/** 判断是否是隐藏文件 */

if ([fileName hasPrefix:@".DS"]) {

continue;

        }

/** 判断是否是文件夹 */

BOOL isDirectory;

        [manager fileExistsAtPath:subPath isDirectory:&isDirectory];

if (isDirectory) {

continue;

        }

/** 获取文件属性 */

NSDictionary *dict = [manager attributesOfItemAtPath:subPath error:nil];

/** 累加 */

        totalSize += [dict fileSize];

    }

/** 返回 */

return totalSize;

}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏iOS开发随笔

iOS常用的正则表达式(持续更新)

14730
来自专栏Gaussic

从文件中截取字段并转换为MD5值 原

16910
来自专栏deepcc

CentOS配置VSFTP服务器

47160
来自专栏進无尽的文章

编码篇-持久化NSUserDefaults

NSUserDefaults类,以字典形式保存数据,IOS会自动把字典中的键值对转换成对应的XML文件(也就是plist文件),这个文件会被保存到APP的沙盒目...

13410
来自专栏向治洪

RCTEventEmitter使用

在0.27版本之前,RN的Native端向js端发射消息主要通过sendDeviceEventWithName的方式,相关代码如下。 @synthesize b...

47570
来自专栏ShaoYL

iOS-SQLite(FMDB)

39480
来自专栏c#开发者

NSArray 排序方法的实现

Compare method Either you implement a compare-method for your object: -(NSCompar...

31760
来自专栏陈满iOS

iOS网络请求之上传图片:从示例到源码解析 -- 以上传Face++SDK回调的图片为例(HYNetworking,AFNetworking,XMNetworking)

本文一开始上传图片以调用HYNetworking的API为例,这个网络框架是以AFNetworking为基础进行的封装。HYNetworking内部实现上传图片...

26520
来自专栏Alice

iOS 获取通讯录里边的电话号码AddressBook

1  首先导入库 <AddressBook/AddressBook.h> 2 然后在导入#import <AddressBook/AddressBook.h>文...

306100
来自专栏.NET开发那点事

关于Form.Close跟Form.Dispose

我们在Winform开发的时候,使用From.Show来显示窗口,使用Form.Close来关闭窗口。熟悉Winform开发的想必对这些非常熟悉。但是Form类...

22660

扫码关注云+社区

领取腾讯云代金券