黑马程序员技术交流社区
标题:
为什么输出结果是文件夹不存在,请各位大神帮忙看一下
[打印本页]
作者:
李国华
时间:
2015-3-30 11:00
标题:
为什么输出结果是文件夹不存在,请各位大神帮忙看一下
传入的路径是没问题的,但输出结果是文件夹不存在
#import <Foundation/Foundation.h>
NSInteger codeLineCount(NSString *path)
{
// 获得文件管理者
NSFileManager *mgr=[NSFileManager defaultManager];
// 判断path是文件夹还是路径
BOOL dir=NO; // 判断文件是否存在
// 判断文件路径是否存在
BOOL exist=[mgr fileExistsAtPath:path isDirectory:&dir];
// 如果不存在,直接返回0
if(!exist)
{
NSLog(@"文件路径不存在");
return 0;
}
if(dir)
{
int count=0;
// 获得当前路径下的所有文件(夹)
NSArray *array=[mgr contentsOfDirectoryAtPath:path error:nil];
// 遍历所有文件名
for(NSString *filename in array)
{
// 子文件的全路径
NSString *fullPath=[NSString stringWithFormat:@"%@%@",path,filename];
// 累加每个路径的总行数
count+= codeLineCount(fullPath);
}
return count;
}
else
{
NSString *extension=[[path pathExtension] lowercaseString];
if(!([extension isEqualToString:@"c"]||
[extension isEqualToString:@"h"]||
[extension isEqualToString:@"m"]))
{
return 0;
}
// 加载文件内容
NSString *content=[NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
// 将文件切割成每一行
NSArray *array=[content componentsSeparatedByString:@"\n"];
NSRange range=[path rangeOfString:@"/Users/Mark_Lee/Desktop/IOS"];
NSString *str=[path stringByReplacingCharactersInRange:range withString:@""];
NSLog(@"%@-%ld",str,array.count);
return array.count;
}
}
int main() {
NSInteger count =codeLineCount(@"/Users/Mark_Lee/Desktop/IOS");
NSLog(@"%ld",count);
return 0;
}
复制代码
作者:
oucding
时间:
2015-3-30 23:51
文件操作还没看到
作者:
李国华
时间:
2015-3-31 09:59
能具体解释一下马:):handshake
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2