将数据写入多个文件的快速方法 - Objective-C OSX

时间:2013-09-27 01:21:18

标签: objective-c nsfilehandle nsoutputstream

目前,我正在使用以下代码连续创建/写入~30,000个文件:

    if ([[NSFileManager defaultManager] fileExistsAtPath:[_output_url path]]) {
        //file already exists, append string to it
        NSFileHandle *aFileHandle = [NSFileHandle fileHandleForWritingAtPath:[_output_url path]];
        [aFileHandle seekToEndOfFile];
        [aFileHandle writeData:[dataString dataUsingEncoding:NSUTF8StringEncoding]];
    } else {
        //create file
        [dataString writeToFile:[_output_url path] atomically:YES encoding: NSUTF8StringEncoding error: NULL];
    }

正如您所猜测的,这需要相当多的时间来运行30k文件。但是,我想知道是否有办法提高效率。我看过NSOutputStream - 这是一个可行的选择吗?或者我总是受限于系统将数据写入文件的速度?

0 个答案:

没有答案