2009-05-05 12 views

答えて

41

例えばNSFileManager Class Reference

[[NSFileManager defaultManager] fileExistsAtPath:pathname 
           isDirectory:&directoryFlag]; 

を参照してください:

NSString *file = @"/tmp/"; 
BOOL isDir = NO; 
if([[NSFileManager defaultManager] 
    fileExistsAtPath:file isDirectory:&isDir] && isDir){ 
    NSLog(@"Is directory"); 
} 
+0

が私のために動作しません、今の理由ではありません。 –

+1

ここで重要なのは、メソッドのisDirectory:部分に渡すBOOLが、ファイルがフォルダであるかどうかを確認するための真のBOOLです。 fileExistsAtPath:isDirectory:から返されるBOOLは、ファイルがパスかどうかを確認するだけです。 – Will

2

HTWからのソリューションが動作しない場合は、この試してみてください。

NSString *file = @"/tmp/"; 
BOOL isDir 
NSDirectoryEnumerator *dirEnum = [[NSFileManager defaultManager] enumeratorAtPath:file]; 
while ((file = [dirEnum nextObject])) { 
    [[NSFileManager defaultManager] fileExistsAtPath:file isDirectory:&isDir]; 
    if(isDir){ 
     NSLog(@"%@ is a directory", file); 
    } 
} 
関連する問題