メソッドの呼び出しが同じアプリケーションのランタイム中に発生する限り、writeToFile メソッドは現在存在するファイル パスに追加されるようです。これは本当ですか?
アプリケーション セッションの実行中に既存のファイルに確実に追加する他の方法はありますか? 新しいセッションでファイルを上書きしたいと思います。
参考までに、writeToFile メッセージの受信者として NSMutableDictionary を使用しています。
メソッドの呼び出しが同じアプリケーションのランタイム中に発生する限り、writeToFile メソッドは現在存在するファイル パスに追加されるようです。これは本当ですか?
アプリケーション セッションの実行中に既存のファイルに確実に追加する他の方法はありますか? 新しいセッションでファイルを上書きしたいと思います。
参考までに、writeToFile メッセージの受信者として NSMutableDictionary を使用しています。
新しいセッションごとにファイルが上書きされるようにするには、新しいセッションの開始時にファイルを削除するだけです。
ファイルに追加するには、 を使用しNSOutputStream
てデータを書き込みます。追加するファイルを開きます。しかし、 から plist ファイルを書き込んでいる場合NSDictionary
、これは機能しません。より良い解決策は、アプリの起動時に辞書を読み込み、アプリの実行時にメモリ内で更新し、アプリがバックグラウンドに入ったときに辞書をファイルに書き込むことです。これは、「セッション」がアプリの起動 (またはバックグラウンド/フォアグラウンド遷移) によって定義されていないことを前提としています。