私のアプリは、最初の 12 バイト データが暗号化されたファイルをダウンロードするため、ドキュメントからこのファイルを読み取り、最初の 12 バイト データを復号化する必要があります。
私の最初の試みは、ファイル全体を読み取って復号化し、再度ファイルに書き込むことでした。ただし、ファイルが大きすぎると、大量のメモリが消費されます。
では、最初の 12 バイトのデータを読み取って置き換える方法はありますか?
私のアプリは、最初の 12 バイト データが暗号化されたファイルをダウンロードするため、ドキュメントからこのファイルを読み取り、最初の 12 バイト データを復号化する必要があります。
私の最初の試みは、ファイル全体を読み取って復号化し、再度ファイルに書き込むことでした。ただし、ファイルが大きすぎると、大量のメモリが消費されます。
では、最初の 12 バイトのデータを読み取って置き換える方法はありますか?
#include <stdio.h>
FILE *f = fopen("yourFileName", "rb");
if(f == NULL)
; // handle exception
int nBytesToRead;
char theBuffer[nBytesToRead];
size_t bytesRead = fread(theBuffer, 1, nBytesToRead, f);
// do with your bytesRead
fclose(f);
Objective-C は C に基づいているため、ファイル操作関数を含むすべての関数はそのまま使用できます。このリンクを使用して、NSString ファイルパスを char 配列に変換し、目的のファイル操作を実行できます。