ファイルやディレクトリが存在するかを判定する : Objective-C プログラミング

PROGRAM


ファイルやディレクトリが存在するかを判定する

Objective-C で、ファイルやディレクトリが存在するかを判定するには、次のようにします。

調べたいファイルやディレクトリは、NSString 型の文字列で指定します。

// 文字列型の変数 path で指定したファイルまたはディレクトリが存在するかを調べます。

if ([[NSFileManager defaultManager] fileExistsAtPath:path])

{

// パスが存在した場合の処理をここに記述します。

 

}

このようにすることで、指定したパスにファイルまたはディレクトリが存在していた場合は、戻り値として YES が返されます。

 

ただしこの方法だと、パスで指定したものがファイルとして見つかったのか、それともディレクトリとして見つかったのかが判りません。

それも知りたい場合には、次のようにします。

// 指定したパスが、ファイルだったかディレクトリだったかを取得するための変数です。

BOOL isDirectory;

 

// 文字列型の変数 path で指定したファイルまたはディレクトリが存在するかを調べます。

if ([[NSFileManager defaultManager] fileExistsAtPath:path isDirectory:&isDirectory])

{

// パスが存在した場合の処理をここに記述します。

 

}

このようにすることで、戻り値でそのパスが存在していたかが判ると同時に、isDirectory 引数で指定した変数に、見つかったものがディレクトリであれば YES が、ファイルであれば NO が設定されます。

[ もどる ]