1

サーバーからファイルをダウンロードしてSQLデータベースに保存するiOSアプリケーションを作成しています。後でユーザーがメッセージをクリックすると、ファイルが解凍され、ファイルのコンテンツが表示されます。

この目的のために、私がやりたいことに適していると思ったこの関数を書きました:

これは、SQLからファイルを取得し、それらのファイルを一時フォルダーに解凍することです

NSString *unzipFolder = [[CommonFunctions getCachePath]stringByAppendingPathComponent:@"temp"];

ユーザーがこのメッセージの表示を完了したら、この一時フォルダーを削除しようとしているので、ユーザーが次のメッセージをクリックして表示すると、一時フォルダーにスペースができます。これは、関数が後でファイルを解凍して表示できるためです。

[[NSFileManager defaultManager] removeItemAtPath:unzipFolder error:&error];

私の問題は、解凍フォルダーのコンテンツを削除する機能を実行しても、このコンテンツは削除されず、ユーザーがメッセージから次のアイテムをクリックすると、以前のメッセージ画像が表示されることです (クリーンアップと自動置換が行われないため)。

この問題を解決するにはどうすればよいですか。また、Temp フォルダーを使用して iOS にファイルを保存し、ユーザーが作業を終えたときに p をクリーンアップするにはどうすればよいですか。

4

1 に答える 1

3

ファイルが存在するかどうかを確認します。

if([[NSFileManager defaultManager] fileExistsAtPath:unzipFolder])
{
  NSError *error;
  [[NSFileManager defaultManager] removeItemAtPath:unzipFolder error:&error];
  NSLog@"Error : %@",[error description]);
}
else
{
  NSLog@"File Exists Not Exists");
}
于 2012-10-02T04:58:36.447 に答える