熟悉NSString,NSArray的使用
学会NSFileManager的使用
首先写好主函数
#import <Foundation/Foundation.h>
int main()
{
NSString *path = @"/Users/pangang/Desktop/pg54/潘罡基础测试";
int count = codeLineCount(path);
NSLog(@"%d",count);
return 0;
}
再写函数:计算函数,会用到
NSFileManager
int codeLineCount(NSString *path)
{
//获取文件管理者
NSFileManager *mgr = [NSFileManager defaultManager];
//判断path是文件还是文件夹
BOOL dir = NO;
BOOL exist = [mgr fileExistsAtPath:path isDirectory:&dir];
开始判断
if(!exist)
{
NSLog(@"是文件夹");
//装着当前文件夹下面的所有内容
NSString *array = [mgr contentsOfDirectoryAtPath:path error:nil];
int count = 0;
//遍历数组中所有的文件名
for(NSString *filename in array)
{
//组合成子文件夹的全路径
NSString *fullpath =[NSString stringWithFormat:@"%@%@",path,filename];
count += codeLineCount(fullpath);
}
return count;
}
else
{
NSString *content = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
// 打印出content
NSLog(@"%@",content);
//用换行符将content切割成数组
NSArray *array = [content componentsSeparatedByString:@"\n"];
//返回元素个数即行数
return array.count;
}
}