iPhoneシミュレータでNSDocumentDirectoryに保存したファイルを削除する
presented by 役に立つかもしれないBlog
iPhoneアプリ開発中はシミュレーターを使ってデバッグ等を行うわけですが、開発中に間違ったデータを保存したりすると、読み込み時にも間違ったデータを読み込んでしまい、うまく起動することができません。
そのトラブルを回避する方法として、間違ったデータファイルを削除するのですが、そのファイルがどこに保存されているのか分からない方もいるのではないでしょうか? 今日はそれを調べて削除してみることにしましょう。
NSDocumentDirectoryってどこ?
ユーザーのデータ保存用に利用する場所として「NSDocumentDirectory」を使って以下のようにパスを取得するコードを書くことが多いです。
NSArray* paths;
NSString* path;
paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
if ([paths count] < 1) {
return nil;
}
path = [paths objectAtIndex:0];
で、ここで取得できるパスってどこ?と思うのですが、デバッガで調べてみると「path」変数には次のような文字列が入ります。
/Users/(ユーザ名)/Library/Application Support/iPhone Simulator/(シミュレータのバージョン)/Applications/(アプリケーションごとのGUID)/Documents
つまり、このパスの中にデータが保存されることになります。
ここで気になるのは、アプリケーションごとのGUIDの部分なのですが、このIDはiPhoneシミュレーター上にアイコンが登録されている間は変化しません。 ただし、iPhoneシミュレーター上から削除し、再度シミュレーターで実行した場合、新たにGUIDが割り振られるので注意してください。
Documents内を削除して解決
このDocumentsディレクトリの中にあなたが保存した間違ったデータファイルがあるので、これをFinder上かターミナルを使って削除してください。
もしGUIDを調べるのが面倒な場合は、Documentsディレクトリと同じ階層に「(プロジェクト名).app」というアプリケーションファイルが出来ているので、上記パスの「Applications」あたりからファイル検索してみても良いでしょう。
Documentsディレクトリ内にドットで始まるような不可視フォルダを作っていた場合は、Documentsディレクトリごと削除してもOK。 再度シミュレーターで実行すればDocumentsフォルダが新規作成されます。
このページに関連のある記事はこちら
- ソフトバンクのポイント失効はこっそり行われている!ぜひ有効利用を。
- Apple製品の部品調達先や製品委託先企業リストが公表される。
- スマートフォン対応手袋「EVOLG」の完成度はどれくらいか?
- ZOMM Wireless Leash Plus の価格と購入手続き
- ZOMM Wireless Leash Plus を日本で買えないか聞いてみた。
- スマートフォン用のUIグラフィック作成を学ぶならこの本
- AppleはAdobeにWindows版XCodeを作ってもらうべきだ(後編)
- 伝記「スティーブ・ジョブズ I・II」を読んだプログラマーの感想
- iOS5のソフトウェアファイル(.ipsw)を手動でフル・ダウンロードして更新する方法
- ソフトバンクでiPhone4Sを一括購入(機種変更)する場合の価格が発表されました。
- UIDatePickerのタイマーで0分に設定しても1分(60秒)になってしまう問題



コメントフォーム