標籤:
//獲得指定檔案距離上次修改時間是否達到了指定值(秒)timeout
+(BOOL)isTimeout:(NSString *)path time:(NSTimeInterval)timeout
{
//獲得目前時間
NSTimeInterval now = [[NSDate date] timeIntervalSince1970];
NSDictionary *dict = [[NSFileManager defaultManager] attributesOfItemAtPath:path error:nil];
// 取得了檔案上次修改的時間
NSDate *d = [dict objectForKey:NSFileModificationDate];
if (now-[d timeIntervalSince1970]>timeout) {
return YES;
}
return NO;
}
//計算檔案夾下檔案的總大小
+(float)fileSizeForDir:(NSString*)path
{
NSFileManager *fileManager = [NSFileManager defaultManager];
//記錄總值
unsigned long long totalSize =0;
//獲得指定路徑path的所有內容(檔案和檔案夾)
NSArray* array = [fileManager contentsOfDirectoryAtPath:path error:nil];
for(int i = 0; i<[array count]; i++)
{
//拼接全路徑
NSString *fullPath = [path stringByAppendingPathComponent:[array objectAtIndex:i]];
BOOL isDir;
//如果指定路徑存在並且不是檔案夾
//NSLog(@"fullPath:%@",fullPath);
//先判斷是否存在,再判斷是檔案夾還是檔案
if ([fileManager fileExistsAtPath:fullPath isDirectory:&isDir] && !isDir)
{
//獲得檔案屬性
NSDictionary *fileAttributeDic=[fileManager attributesOfItemAtPath:fullPath error:nil];
totalSize+=[[fileAttributeDic objectForKey:NSFileSize] unsignedLongLongValue];
}
else
{
//如果是檔案夾,遞迴
totalSize+=[self fileSizeForDir:fullPath];
}
}
return totalSize;
}
iOS NSFileManeger 計算檔案是否逾時,和計算檔案夾下檔案的總大小