目前,我正在使用以下代码连续创建/写入数据到约 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 - 这是一个可行的选择吗?还是我总是受到系统将数据写入文件的速度的限制?