大きな(数百MB).wavオーディオファイルの小さなチャンク(32バイト)を変更しようとしています。現在、私はを使用してファイルをロードします
[NSData dataWithContentsOfURL:]
バイトを変更し、を使用してファイルを保存します
[data writeToURL:].
RAMにロードせずにバイナリファイルを変更する便利な方法はありますか?
編集:次のstdio関数は私のために働きます:
NSUInteger myOffset = 8;
const char *myBytes = myData.bytes;
NSUInteger myLength = myData.length;
FILE *file = fopen([[url path] cStringUsingEncoding:NSASCIIStringEncoding], "rb+");
assert(file);
fseek(file, myOffset, SEEK_CUR);
fwrite(myBytes, 1, myLength, file);
fclose(file);