Objective C在目录中查找指定的文件
2014-08-19 16:46
190 查看
编写一个名为myfind命令行工具,它带有两个参数。第一个参数是开始搜索的初始目录,第二个参数是需要定位的文件名。
命令行$myfind /home test.m
命令行$myfind /home test.m
#import <Foundation/Foundation?.h> int main (int argc, char *argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSFileManager *fm; NSString *startDir; NSString *fileName; BOOL isDir; NSProcessInfo *proc = [NSProcessInfo processInfo]; NSArray *args = [proc arguments]; NSString *curPath; NSDirectoryEnumerator *dirEnum; int file_find_item = 0; fm = [NSFileManager defaultManager]; Check for correct usage if (argc != 3) { NSLog(@"Usage: find <start_dir> <file_name>"); return 1; } startDir = [args objectAtIndex: 1]; fileName = [args objectAtIndex: 2]; //判断目录是否存在 [fm fileExistsAtPath: startDir isDirectory: &isDir]; Check that the first argument is a directory if (!isDir) { if (argc == 3) { NSLog(@"Usage: find <start_dir> <file_name>"); return 1; } } dirEnum = [fm enumeratorAtPath: startDir];//枚举目录的内容 while ((curPath = [dirEnum nextObject]) != nil) { if ([[curPath lastPathComponent] isEqualToString: fileName]) { NSLog(@"Found %@ located at %@", fileName, [startDir stringByAppendingPathComponent: [curPath stringByDeletingLastPathComponent]]); file_find_item ++; } } //curPath = [dirEnum nextObject] //返回下一级目录的内容。 //[curPath lastPathComponent] //提取路径的最后一个组成部分。 //stringByDeletingLastPathComponent //删除路径的最后一个组成部分。 if (file_find_item == 0) NSLog(@"%@ not found", fileName); [pool drain]; return 0; }
相关文章推荐
- vc__在指定目录下查找文件
- 查找该目录下指定文件类型的用 vc 6.0 编写 的关于文件搜索的例子
- win32控制台下实现查找并显示指定目录下的指定类型文件
- 在指定目录中查找指定类型的文件,并且获取文件名再显示
- findfirst findnext 递归查找指定目录下所有子目录下所有文件,为什么总是死机?
- vc查找指定目录下的文件:
- QT 遍历目录查找指定文件
- 查找程序所在上一级目录中是否存在指定文件夹,不存在就建立,并在其中新建一个txt文件
- Linux下用find查找并复制指定文件到指定目录下
- 查找指定目录下的特定文件 (包括子目录)
- VB查找指定路径中的文件和目录列表
- VBA实战技巧精粹012:查找指定目录下的指定文件及Dir函数用法
- C++及API函数实现查找某目录下指定类型的文件
- 从目录中查找指定后缀文件内的指定字符串
- 用grep查找指定目录及其子目录下的特定文件类型
- [Excel VBA] 查找指定目录下的匹配文件
- 递归 / 迭代两种方法实现查找指定目录下所有文件
- Linux查找当前目录及其子目录下所有包含指定字符串的文件
- shell脚本查找指定目录下所有子目录中的同名文件
- shell脚本查找指定目录下所有子目录中的同名文件