iOS往文件写数据的三种方法

1 直接通过将data加入到目标文件的方法

 [self.mutableData writeToFile:@"/Users/Apple/Desktop/text.hm" atomically:YES];

2 通过文件输出流的方式

@property (nonatomic, strong) NSOutputStream *stream;

首先根据给出的路径初始化输出流

 //创建流
    self.stream = [NSOutputStream outputStreamToFileAtPath:@"/Users/Apple/Desktop/text.hm" append:YES];
    //打开流
    [self.stream open];

//保存数据
    [self.stream write:data.bytes maxLength:data.length];

数据写完了,关闭输出流

 //关闭流
  [self.stream close];

第三种方法 通过NSFileHandle的方式,文件句柄

NSString *filePath = @"/Users/Apple/Desktop/111111.hm";
    //如果文件不存在,返回的是nil
    NSFileHandle *fileHandle = [NSFileHandle fileHandleForWritingAtPath:filePath];
    if (fileHandle == nil) {
        //如果文件不存在,会自动创建
        [data writeToFile:filePath atomically:YES];
    }else {
        //让offset指向文件的末尾
        [fileHandle seekToEndOfFile];
        
        [fileHandle writeData:data];
        //关闭文件
        [fileHandle closeFile];
    }

 

 

你可能感兴趣的:(iOS)