iOS:如何加载较大文件的一部分进行上传?

时间:2012-07-15 06:56:22

标签: ios ios5 nsstream alasset

我正在处理ALAsset的大型实例,我正在尝试将资产拆分为更小的块以进行上传。

将大文件拆分为较小的块而不将整个文件加载到内存中有什么好方法?

1 个答案:

答案 0 :(得分:2)

我是在文本编辑器中完成的,但它应该编译。 NSFileHandle是UNIX文件实用程序的瘦包装器。

    #define CHUNK_SIZE 2048

        NSFileHandle *fh = [NSFIleHandle fileHandleForReadingAtPath:<the file path as a 

string>];

    while(YES) {
        NDSata *chunk = [fh readDataOfLength:CHUNK_SIZE];

        NSUInteger length = [chunk length];
        if(length == 0) break; // done

        // send the data
    }
    fh = nil; // under arc this releases the object