文件操作-NSFileManager

NSFileManager类主要方法

+(NSFileManager *)defaultManager;获得文件管理器对象
-(BOOL)createFileAtPath:(NSString *)path contents:(NSData *)data attributes:(NSDictionary *)attr;创建文件
-(BOOL)createDirectoryAtPath:(NSString *)path withIntermediateDirectories:(BOOL)createIntermediates attributes:(NSDictionary *)attributes error:(NSError **)error;创建目录
-(BOOL)fileExistsAtPath:(NSString *)path;判断一个文件或目录是否存在
-(BOOL)fileExistsAtPath:(NSString *)path isDirectory:(BOOL *)isDirectory;判断文件是否存在且判断path是文件还是目录
-(BOOL)copyItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error;文件或目录复制
-(BOOL)moveItemAtPath:(NSString *)srcPath toPath:(NSString *)dstPath error:(NSError **)error;文件或目录移动
-(BOOL)removeItemAtPath:(NSString *)path error:(NSError **)error;文件或目录删除
 
 
创建文件代码
//创建文件
NSFileManager *fm = [NSFileManager defaultManager];  //创建文件管理器

NSString *path = @"/Users/ni/Desktop/input.txt";
NSString *str = @"Hello World!";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];  //将str转化为NSData类型

BOOL flag = [fm createFileAtPath:path contents:data attributes:nil];
if(flag) {
    NSLog(@"create success!");
} else {
    NSLog(@"create fail!");
}

读取文件代码

//读取文件
NSString *fileContent = [NSString stringWithContentsOfFile:path encoding:NSUTF8StringEncoding error:nil];
NSLog(@"%@",fileContent);

NSData:用来设置缓冲区,将文件内容读入缓冲区,或将缓冲区的内容写到一个文件

目录(文件夹)操作:遍历方法
-(NSDirectoryEnumerator *)enumeratorAtPath:(NSString *)path;深度遍历(遍历所有子文件夹),返回目录枚举器(NSDirectoryEnumerator)
-(NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error;浅度遍历,返回目录中的所有文件&文件夹的名字

NSString *dirPath = @"/Users/ni/Desktop/workspace";
NSFileManager *fm = [NSFileManager defaultManager];

//深度遍历
NSDirectoryEnumerator *dirs = [fm enumeratorAtPath:dirPath];
NSString *path = [dirs nextObject];
while (path != nil) {
    NSLog(@"%@",path);
    path = [dirs nextObject];
}

//浅度遍历
NSArray *arr = [fm contentsOfDirectoryAtPath:dirPath error:nil];
NSLog(@"%@", arr);

NSDirectoryEnumerator类有两个方法
-(id)nextObject;
-(NSArray *)allObjects;

时间: 2024-08-29 04:10:11

文件操作-NSFileManager的相关文章

iOS——文件操作NSFileManager (创建、删除,复制,粘贴)

iOS——文件操作NSFileManager (创建.删除,复制,粘贴) iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像android,没有SD卡概念,不能直接访问图像.视频等内容.iOS应用产生的内容,如图像.文件.缓存内容等都必须存储在自己的沙盒内.默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp.Library包含Caches.Preferences目录.               上面的完整路径为:用户->资源库->Applicat

【非凡程序员】 OC第十七节课 文件操作(NSFileManager和NSFileHandle)

文件操作 #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {    @autoreleasepool {        // insert code here...        NSLog(@"Hello, World!");                //----------- NSFileManager---------//                //实例化

文件操作——NSFileManager

NSFileManager: 对文件本身操作. 创建文件管理对象(单例) #define PATH @"/users/XXX/Desktop/files" NSFileManager * manager = [NSFileManager defaultManager]; 浅遍历 - (NSArray *)contentsOfDirectoryAtPath:(NSString *)path error:(NSError **)error NS_AVAILABLE(10_5, 2_0);

IOS 开发文件操作——NSFileManager

转自:http://blog.csdn.net/xyz_lmn/article/details/8968213,留着方便查阅 iOS的沙盒机制,应用只能访问自己应用目录下的文件.iOS不像android,没有SD卡概念,不能直接访问图像.视频等内容.iOS应用产生的内容,如图像.文件.缓存内容等都必须存储在自己的沙盒内.默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp.Library包含Caches.Preferences目录.               上

Objective-C文件和目录操作,IOS文件操作,NSFileManager使用文件操作

转自 http://blog.csdn.net/swingpyzf/article/details/15185767 objective-c通过使用NSFileManager类来管理和操作文件.目录,NSFileManager,文件或目录是使用文件的路径名的唯一标示.每个路径名都是一个NSString对象. NSFileManager对象通过defaultManager方法来创建实例 列如: NSFileManager *fm = [NSFileManager defaultManager];

【Foundation】NSFileManager文件操作

NSFileManager文件操作: -(NSData *) contentsAtPath: path 从一个文件中读取数据 -(bool)createFileAtPath:path contents:(NSData *)data attributes:attr 创建一个文件并写入数据 -(BOOL) removeItemAtPath: path error: err 删除一个文件 -(BOOL) moveItemAtPath: from toPath: to error: err 重命名或移动

【Foundation】NSFileManager文件操作.02

1.文件目录操作 // 1.创建文件操作对象fm,并打印出当前目录 NSFileManager *fm=[NSFileManager defaultManager]; // 获取当前目录 NSLog(@"当前目录:%@",[fm currentDirectoryPath]); ///2014-04-01 13:58:20.523 NSFileManager[1161:303] 当前目录:/Users/haiyefeng/Library/Developer/Xcode/DerivedDa

iOS NSFileManager文件操作

参考:http://blog.csdn.net/xyz_lmn/article/details/8968213 感谢这些先行者 文件操作常用操作记录一下: //获取沙盒的根路径 NSString *dirHome = NSHomeDirectory(); NSLog(@"%@",dirHome); //获取Documents目录路径 NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentationDirectory,

IOS学习之IOS沙盒(sandbox)机制和文件操作之NSFileManager(三)

我们看看NSFileManager如何使用.包括创建文件,目录,删除,遍历目录等. 1.在Documents里创建目录 创建一个叫test的目录,先找到Documents的目录, NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectory = [paths objectAtIndex:0]; NSLog(