代码改变世界

获取项目中代码行数、图片资源列表及大小

2015-08-18 11:51  圆圆的月亮在地上  阅读(258)  评论(0编辑  收藏  举报
- (NSInteger)codeLinesWithPath:(NSString *)path{
    
    NSFileManager *fileManaget = [NSFileManager defaultManager];
    BOOL isDir = NO;
    BOOL isExist = [fileManaget fileExistsAtPath:path isDirectory:&isDir];
    
    if (!isExist) {
        return 0;
    }
    
    if (isDir) {//文件夹
        
        NSArray *arr = [fileManaget contentsOfDirectoryAtPath:path error:nil];
        
        int sum = 0;
        
        for (NSString *fileName in arr) {//文件(夹)
            
            NSString *fullPath = [NSString stringWithFormat:@"%@/%@",path,fileName];
            sum += [self codeLinesWithPath:fullPath];
            
        }
        
        return sum;
        
    }else{//文件
        
        /*
         NSString *extension = [[path pathExtension] lowercaseString];
         if (!([extension isEqualToString:@"h"] || [extension isEqualToString:@"m"] || [extension isEqualToString:@"mm"])) {
         return 0;
         }
         
         NSString *content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
         NSArray *arr = [content componentsSeparatedByString:@"\n"];
         
         return arr.count;
         */
        
        NSString *extension = [[path pathExtension] lowercaseString];
        if (!([extension isEqualToString:@"png"] || [extension isEqualToString:@"jpg"])) {
            return 0;
        }
        
        NSString *imageName = [path stringByReplacingOccurrencesOfString:@"/Users/xiaozeru/Desktop/HKProject/Res/" withString:@""];
        NSData *data = [NSData dataWithContentsOfFile:path];
        NSLog(@"imageName:%@--size:%dkb",imageName,data.length/1024);
        
        return 1;
        
    }
    
    return 0;
}