OC 学习笔记3 文件夹下所有.txt文件的行数
来源:互联网 发布:mac版ps怎么安装字体 编辑:程序博客网 时间:2024/05/18 00:22
#import <Foundation/Foundation.h>
NSUInteger InDictionary(NSString*);
NSUInteger InFile(NSString*);
int main(int argc,const char * argv[]) {
@autoreleasepool {
NSString* path;//文件路径
NSLog(@"%lu",InDictionary(path));
}
return 0;
}
NSUInteger InDictionary(NSString* path){
//NSFileManager是单例模式 [[NSFileManager alloc] init]不起作用,整个类中只有一个对象
NSFileManager* fileManager = [NSFileManagerdefaultManager];
BOOL isDir = YES;
BOOL exist = [fileManager fileExistsAtPath:path isDirectory:&isDir];
//先判断文件是不是存在,在判断是不是路径
if(!exist){
NSLog(@"文件路径不存在");
return 0;
}
if(isDir){
int count = 0;
//目录
//目录中的所有相对路径,注意是相对路径,所以还要设置一个全路径
NSArray* pathContents = [fileManager contentsOfDirectoryAtPath:path error:nil];
for (int i =0; i<pathContents.count; i++) {
//用这种方法设置全路径
NSString* fullPath = [NSStringstringWithFormat:@"%@/%@",path,pathContents[i]];
count+=InDictionary(fullPath);
}
return count;
}
else{
// 不是目录
return InFile(path);
}
return 0;
}
NSUInteger InFile(NSString* path){
//文件的拓展名是txt h m c cpp mm才行(不是.txt .h .c .cpp .m .mm)
NSString* extentName = [path pathExtension];
if(![extentName isEqualTo:@"txt"]){
return 0;
}
NSString* content = [NSStringstringWithContentsOfFile:path encoding:NSUTF8StringEncodingerror:nil];
//用"\n"把文件的内容分割,数组的每一项内容就是文件的每一行内容(array[0]就是文件的第一行的内容),所以数组的个数就是文件的行数
NSArray* array = [contentcomponentsSeparatedByString:@"\n"];
return array.count;
}
- OC 学习笔记3 文件夹下所有.txt文件的行数
- 获得文件夹下所有的txt文件
- python列举文件夹下所有文件行数
- 【Java学习】遍历文件夹下所有的文件【以txt为例】
- 将一个文件夹下的所有文件后缀改成.txt
- C++ 合并文件夹下所有的txt文件
- 利用正则表达式统计某个某个文件夹下所有java文件的 空格行数、注释行数、和代码行数
- 读取一个文件夹下所有的txt文件,并保存到一个txt文本中
- Linux 下使用 wc 统计文件夹下所有文件的代码行数(包括子目录)
- python2.7.3 统计某个文件夹下所有文件或者某个文件的行数
- OpenCV学习笔记---- 挨个读取图像文件夹下的所有文件,进行样本训练
- php遍历输出文件夹下所有txt文件
- 读取文件夹下的子文件夹的所有文件名,并保存成以子文件命名的txt文件
- 程序算出一个文件夹中所有文件的行数
- 批处理,用一个exe处理一个文件夹下的所有txt文件
- c++读取某文件夹下的所有文件并查找.txt类型文件名
- 如何读取文件夹下的所有文件名到TXT文件中
- STL---获取某个文件夹下的所有txt文件,并进行处理
- Material Design 拾荒记(二) RecyclerView Simple
- Fast Median Filtering Based on FPGA
- MSVC 2013 + Qt 5.4.2 + quazip 0.7.1 的编译及使用
- 控制图片宽度或者高度且使图片不失真
- hdu--2576
- OC 学习笔记3 文件夹下所有.txt文件的行数
- d3d渲染管线前缀
- JAVA基础3-程序结构与控制、函数与数组入门
- single-number-iii
- 测试审核
- Android 面试tips
- 占座
- 天津占座
- uva 1153—— Keep the Customer Satisfied