我想在Objective-C中读取一个大文件,并用于iPhone开发
我使用了以下代码

NSData *data = [[NSData alloc] initWithContentsOfFile:file];
unsigned char *readData[2000];
[data getBytes:readData range:NSMakeRange(1000,3000)]

这可能会导致iPhone应用程序崩溃,因为文件很大。

我尝试使用NSInputStream,但是在任何方法中都找不到range参数,有人可以提供帮助吗?

致以最诚挚的问候
蒂米

最佳答案

使用NSFileHandle:查找数据开始的偏移量,然后从那里开始读取。

NSFileHandle *fileHandle = [NSFileHandle fileHandleForReadingAtPath:filePath];
[fileHandle seekToFileOffset:1000];
NSData *data = [fileHandle readDataOfLength:2000];

关于iphone - 如何在objective-c中按范围读取大文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6104577/

10-10 21:04