我的包中有一个大型文本资源。这是一个 CSV,其中包含类似 的行
0,1,100,2.2345
超过 9MB。打开并顺序读取它的最佳方法是什么,以便我可以执行以下操作:
myObject->initData(col0, col1, col2, col3);
(这只是将浮点值填充到由文件中的整数索引的多个多维数组之一中。)
我尝试使用 [NSString stringWithContentsOfFile:] 将其读入字符串并使用 NSScanner 对其进行循环,但我不想加倍内存使用,即使是暂时的。它也很慢。
最好的方法是什么?
谢谢
Best Answer-推荐答案 strong>
您可以使用 NSFileHandle 或 C API 进行增量读取,也可以将 mmap 与 NSData 一起使用。
其余的是基本的 cstring 缓冲区处理,或者您可以逐行使用 NSString 。
如果您可以将其导出为二进制浮点序列而不是 CSV,您的生活可能会更轻松。
关于ios - 在 iOS 上将大型文本资源读入数组,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/9424871/
|