1

これを検索しましたが、結果を取得するための正しいキーワードが得られませんでした。だから私は質問をします。これが私の質問です。

指定された NSURL パスが FOLDER (または) テキスト ファイル用であるかどうかを確認するための if 条件を指定する方法。
例えば:

 if ([the given url is for FOlDERS])  
 {
    //i want to so something
 }
 else if([it contains .rtf files])
 {
    //i want to so something
 }
  else if([it contains .mov files])
  {
    //i want to so something
  }        

私のURLは

Users/Desktop/dr/dg.rtf  
Users/Desktop/dr/dhoom.mov  
Users/Desktop/dr/SampleTest/

私にいくつかの提案をしてください。

4

3 に答える 3

2
NSURL *url;
//set url here

if([url isFileURL])
{
  if([url pathExtension] isEqualToString:@"mov"])
  {
    //do .mov stuff
  }
  else if([url pathExtension] isEqualToString:@"rtf"]
  {
    //do .rtf stuff
  }
}
else
{
   if([[url lastPathComponent] isEqualToString:@"SampleTest"])
   {
     //do your SampleTest folder stuff
   }
}
于 2012-07-12T13:51:23.947 に答える
1

これはどう?

BOOL isDir;
NSURL *yourURL;

NSFileManager *fileManager = [[NSFileManager alloc] init];
BOOL result = [fileManager fileExistsAtPath:[yourURL path] isDirectory:&isDir];
if (result) {
    // ok yourURL is pointing to something real
    if (isDir) {
        // yourURL is a directory
    }
    else if ([[yourURL pathExtension] isEqualToString:@"mov"])
    {
        // yourURL is a .mov
    }
    else if ([[yourURL pathExtension] isEqualToString:@"rtf"])
    {
        // yourURL is a .rtf
    }
}
[fileManager release];

Michalwernerの回答と固定構文の組み合わせ。

于 2012-07-12T15:41:20.447 に答える
0

のドキュメントをご覧くださいNSFileManager

それはあなたが必要とすることを正確に行うメソッドを含んでいます:

- (BOOL)fileExistsAtPath:(NSString *)path isDirectory:(BOOL *)isDirectory
于 2012-07-12T11:13:51.557 に答える