こんにちは、Unityエンジニアのオオバです。
Objective-Cでダウンロードした画像が、
ストレージに存在するかを確認します。
fileExistsAtPathメソッドを使う
NSFileManager
のfileExistsAtPath
メソッドに
画像のパスを渡してあげると良いです。
BOOL isExist = [[NSFileManager defaultManager]
fileExistsAtPath:filePath];
↑filePath
部分を適宜変更してもらえれば
ファイルの存在可否でBOOL型が返却されます。
※本記事は広告を含みます
👉DOTweenの教科書を読んでUnityアニメーションをプログラミングしてみよう!
もくじ
3ステップの実装手順
- ファイルまでのパスを作成
NSFileManager
を取得NSFileManager
のfileExistsAtPath
メソッドを実行
この3ステップで確認できます。
以下のサンプルではimg.png
というファイルが
NSDocumentDirectory
にダウンロードされていることを確認するコードです。
ステップ1. ファイルまでのパスを作成
確認するファイルパスを作成します。
変数filePathに格納。
NSArray *dirPaths = NSSearchPathForDirectoriesInDomains
(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *filePath = [[dirPaths objectAtIndex:0]
stringByAppendingPathComponent:@"img.png"];
今回はドキュメントディレクトリに
保存されたimg.png
の有無を確認するサンプルです。
ステップ2. NSFileManagerを取得
NSFileManager *fileManager = [NSFileManager defaultManager];
NSFileManager
のクラスメソッドdefaultManager
で
NSFileManagerインスタンスを取得します。
ステップ3.NSFileManagerのfileExistsAtPathメソッドを実行
BOOL isExist = [fileManager fileExistsAtPath:filePath];
ステップ1〜2で用意した
NSFileManager
とファイルパスを使って
ファイルの確認をします。
NSFileManager
のfileExistsAtPath
メソッド実行で
BOOL型が返ってきます。
まとめ
Objective-Cを使って
ストレージ内のファイルの存在確認をしました。
「NSFileManagerのfileExistsAtPathメソッドを使う」
これだけ覚えておけば大丈夫でしょう。
最後にソースコード全体を添付します。
// 【1. ファイルまでのパスを作成】
// ダウンロードした画像が格納されたディレクトリパス取得(適宜変更してください)
NSArray *dirPaths = NSSearchPathForDirectoriesInDomains
(NSDocumentDirectory, NSUserDomainMask, YES);
// ファイルパスの作成
NSString *filePath = [[dirPaths objectAtIndex:0]
stringByAppendingPathComponent:@"img.png"];
// 【2. NSFileManagerを取得】
NSFileManager *fileManager = [NSFileManager defaultManager];
// 【3. NSFileManagerのfileExistsAtPathメソッドを実行】
// fileExistsAtPathメソッドでファイルの有無確認
BOOL isExist = [fileManager fileExistsAtPath:filePath];
// 1が出力されたら存在する
NSLog(@"isExist: %d", isExist);
ご参考にどうぞ。

この記事が気に入ったらフォローしよう
オススメ記事