IOS中计算文件的大小

通常用于删除缓存的时,计算缓存大小

//单个文件的大小

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

}

时间: 2024-11-05 20:34:05

IOS中计算文件的大小的相关文章

iOS中计算文件夹中文件大小

通常用于删除缓存的时,计算缓存大小 //单个文件的大小 - (long long) fileSizeAtPath:(NSString*) filePath{ NSFileManager* manager = [NSFileManager defaultManager]; if ([manager fileExistsAtPath:filePath]){ return [[manager attributesOfItemAtPath:filePath error:nil] fileSize]; }

iOS中对文件的操作

转自:http://marshal.easymorse.com/archives/3340 iOS中对文件的操作 因为应用是在沙箱(sandbox)中的,在文件读写权限上受到限制,只能在几个目录下读写文件: Documents:应用中用户数据可以放在这里,iTunes备份和恢复的时候会包括此目录 tmp:存放临时文件,iTunes不会备份和恢复此目录,此目录下文件可能会在应用退出后删除 Library/Caches:存放缓存文件,iTunes不会备份此目录,此目录下文件不会在应用退出删除 在Do

计算文件夹大小、拷贝文件显示进度

计算文件夹大小(get-childitem -path $folder -recurse| measure-object -property length -sum).sum/1mb #拷贝文件提示进度(脚本只对零散文件有效,如果有大型文件的话,进度显示不正确)$folder = "D:\Temp_del"$des = "d:\test"$p=0$sizes = (get-childitem -path $folder -recurse| measure-objec

Python_计算文件夹大小

计算文件夹大小 os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印 os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 os.path.getsize(path) 返回path的大小 os.path.isdir(path) 如果path是一个存在的目录,则返回True.否则返回False 递归版: 1 import os 2 3 4 def get_size(pa

iOS中计算磁盘缓存文件夹的大小

SDWebImage框架中在自动做磁盘缓存的过程中,底层实现了计算Cache的大小,框架的方法名称是getSize,但方法不容易被人理解,我就从新写了一下,附带注释 基本思想: 1. 先取出的Cache,获取该文件的路径 2. 利用NSFileManager,取出该文件下的所有子路径返回一个数组 3.遍历数组,利用文件的fileSize属性,把每个子路径下文件的取出来累加,即为该文件夹的大小 注意: 注意文件夹的隐藏文件,会使得到的文件大小出现偏差 得到的大小为B,若是在苹果手机中,需转化M(需

iOS NSFileManeger 计算文件是否超时,和计算文件夹下文件的总大小

//获得指定文件距离上次修改时间是否达到了指定值(秒)timeout +(BOOL)isTimeout:(NSString *)path time:(NSTimeInterval)timeout { //获得当前时间 NSTimeInterval now = [[NSDate date] timeIntervalSince1970]; NSDictionary *dict = [[NSFileManager defaultManager] attributesOfItemAtPath:path

Java中计算对象的大小

一.计算对象大小的方法 Java中如何计算对象的大小呢,找到了4种方法: 1.java.lang.instrument.Instrumentation的getObjectSize方法: 2.BTraceUtils的sizeof方法: 3.http://yueyemaitian.iteye.com/blog/2033046中提供的代码计算: 4.https://github.com/mingbozhang/memory-measurer提供的工具包: 本质上java.lang.instrument

清除缓存,,计算文件夹大小

#import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // //    NSLog(@"缓存文件大小为%@",[NSString stringWithFormat:@"%0.2fM",[self folderSizeAtPath:[N

Python3将ipa包中的文件按大小排序

给你个ipa包,解压前输出包大小,解压后把里面的文件按大小排序.代码如下: import os import shutil import zipfile _ipa_zip_path = lambda ipa_path: ipa_path.replace('.ipa', '.zip') _file_size = lambda file_path: os.path.getsize(file_path) / 1024 / 1024 def unzip(zip_path: str) -> str: di