iOS 关于文件操作 NSFileManager

Posted gwca

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 关于文件操作 NSFileManager相关的知识,希望对你有一定的参考价值。

  • 创建文件夹
    + (BOOL)creatDir:(NSString *)path {
        if (path.length==0) {
            return NO;
        }
        NSFileManager *fileManager = [NSFileManager defaultManager];
        BOOL isSuccess = YES;
        BOOL isExist = [fileManager fileExistsAtPath:path];
        if (isExist==NO) {
            NSError *error;
            if (![fileManager createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:&error]) {
                isSuccess = NO;
                NSLog(@"creat Directory Failed:%@",[error localizedDescription]);
            }
        }
        return isSuccess;
    }
    

      

  • 创建文件
    + (BOOL)creatFile:(NSString*)filePath {
        if (filePath.length==0) {
            return NO;
        }
        NSFileManager *fileManager = [NSFileManager defaultManager];
        if ([fileManager fileExistsAtPath:filePath]) {
            return YES;
        }
        NSError *error;
        NSString *dirPath = [filePath stringByDeletingLastPathComponent];
        BOOL isSuccess = [fileManager createDirectoryAtPath:dirPath withIntermediateDirectories:YES attributes:nil error:&error];
        if (error) {
            NSLog(@"creat File Failed:%@",[error localizedDescription]);
        }
        if (!isSuccess) {
            return isSuccess;
        }
        isSuccess = [fileManager createFileAtPath:filePath contents:nil attributes:nil];
        return isSuccess;
    }
    

      

  • 写入文件
    + (BOOL)writeToFile:(NSString*)filePath contents:(NSData *)data {
        if (filePath.length==0) {
            return NO;
        }
        BOOL result = [self creatFile:filePath];
        if (result) {
            if ([data writeToFile:filePath atomically:YES]) {
                NSLog(@"write Success");
            }else{
                NSLog(@"write Failed");
            }
        }
        else{
            NSLog(@"write Failed");
        }
        return result;
    }
    

      

  • 追加数据
    + (BOOL)appendData:(NSData*)data withPath:(NSString *)filePath {
        if (filePath.length==0) {
            return NO;
        }
        BOOL result = [self creatFile:filePath];
        if (result) {
            NSFileHandle *handle = [NSFileHandle fileHandleForWritingAtPath:filePath];
            [handle seekToEndOfFile];
            [handle writeData:data];
            [handle synchronizeFile];
            [handle closeFile];
        }
        else{
            NSLog(@"appendData Failed");
        }
        return result;
    }

  

 

以上是关于iOS 关于文件操作 NSFileManager的主要内容,如果未能解决你的问题,请参考以下文章

iOS学习笔记(十七)——文件操作(NSFileManager)

iOS学习笔记——文件操作(NSFileManager)

Foundation框架中的NSFileManager一

ios NSFileManager 用法详解

IOS--文件管理NSFileManager

在 iOS 中使用 NSFileManager 写入文件