标签:
一、NSData
二、NSFileManager
1、NSFileManager采用文件名作为文件的唯一标识符,即每个文件名都对应一个NSString对象。这里先引入两个概念:
开头是"/",代表根目录:/Users/abc。
开头是"~",代表当前用户的home目录:如用户是zhangsan,"~"就代表了/Users/zhangsan,也可写成~zhangsan。
开头是".",代表当前目录。
开头是"..",代表当前目录的上一级目录。
2、NSFileManager常用的方法:
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/abc.txt";
3 if ([fm fileExistsAtPath:path]) {
4 NSLog(@"存在");
5 } else {
6 NSLog(@"不存在");
7 }
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/abc.txt";
3 BOOL isDir;
4 if ([fm fileExistsAtPath:path isDirectory:&isDir]) {
5 NSLog(@"存在");
6 if (isDir) {
7 NSLog(@"是目录");
8 } else {
9 NSLog(@"不是目录");
10 }
11 } else {
12 NSLog(@"不存在");
13 }
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/abc.txt";
3 NSArray *dirs = [fm componentsToDisplayForPath:path];
4 for (NSString *dir in dirs) {
5 NSLog(@"%@", dir);
6 }
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/abc.txt";
3 NSDictionary *dict = [fm attributesOfItemAtPath:path error:nil];
4 NSLog(@"文件大小:%@,创建时间:%@。", dict[NSFileSize], dict[NSFileCreationDate]);
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/hehe/haha";
3 NSError *error = nil;
4 // 当hehe文件夹不存在时,YES能自动创建hehe,NO则不创建hehe并返回error错误信息。
5 [fm createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:&error];
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/hehe/haha/abc.txt";
3 [fm createFileAtPath:path contents:[@"这是一条内容。" dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/hehe/haha/abc.txt";
3 [fm removeItemAtPath:path error:nil];
1 1 NSFileManager *fm = [NSFileManager defaultManager];
2 2 NSString *path = @"/Users/hanlulu/Desktop/hehe/haha/abc.txt";
3 3 NSString *toPath = @"/Users/hanlulu/Desktop/hehe/abc.txt";
4 4 [fm moveItemAtPath:path toPath:toPath error:nil];
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop";
3 NSArray *array = [fm contentsOfDirectoryAtPath:path error:nil];
4 for (NSString *item in array) {
5 NSLog(@"%@", item);
6 }
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/hehe";
3 NSDirectoryEnumerator *dirEnum = [fm enumeratorAtPath:path];
4 NSString *file = nil;
5 while (file = [dirEnum nextObject]) {
6 NSLog(@"%@", file);
7 }
1 NSFileManager *fm = [NSFileManager defaultManager];
2 NSString *path = @"/Users/hanlulu/Desktop/hehe";
3 NSArray *array = [fm subpathsAtPath:path];
4 for (NSString *item in array) {
5 NSLog(@"%@", item);
6 }
三、NSPathUtilities.h
1、NSPathUtilities.h是NSString类的扩展,在分类NSStringPathExtensions中主要提供了一些专门操纵路径的方法和属性:
2、下列函数用来获取系统相关属性:
四、NSProcessInfo
NSProcessInfo对象可以用于获取当前进程的相关信息:
五、NSFileHandle
NSFileHandle提供了大量处理文件IO的方法,详见该类的头文件。其基本使用步骤如下:
NSFileHandle没有提供创建文件的功能,这里需使用NSFileManager来创建。
NSFileHandle还提供了很多用于后台读写的方法,大多数以InBackgroundAndNotify结尾,这些操作是异步进行的,不会阻塞前台线程,在读写完成后会向前台发送一个通知。
标签:
原文地址:http://www.cnblogs.com/hankkk/p/5726488.html