2012-05-04 29 views
0

我正在爲我的個人使用編寫OS X應用程序,我想要獲取並隨後搜索plist類型的所有文件。我正在努力完成第一項任務。你能指點我的方向還是提供在線教程。謝謝。獲取plist類型的文件

+0

我想澄清一下。我不想全局搜索,而是想要一個給定的目錄。 –

回答

0
NSString *searchDirectory = ...; 
NSArray *files = [[NSFileManager defaultManager] contentsOfDirectoryAtPath: searchDirectory 
                    error: NULL]; 
[files enumerateObjectsUsingBlock: ^(NSString *fileName, NSUInteger idx, BOOL *stop) { 
    if ([[fileName pathExtension] isEqualToString: @"plist"]) { 
     NSString *filePath = [searchDirectory stringByAppendingPathComponent: fileName]; 
     // Do something with the plist file 
    } 
}]; 
+1

不要檢查路徑擴展,檢查UTI。 ' - [NSWorkspace typeOfFile:error:]'後跟'-type:conformsToType:',其中「com.apple.property-list」作爲類型。 –

0

嘗試用這樣的事情:

NSError *error = nil; 
NSString *folder = <# your folder #>; 
NSArray *contents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:folder error:&error]; 
if (error) { 
    <# deal with error #> 
} else { 
    NSString *path; 
    for (NSString *entry in contents) { 
     if ([entry hasSuffix:@"plist"]) { 
      path = [folder stringByAppendingPathComponent:entry]; 
      <# do something with file at path #> 
     } 
    } 
} 

此外,檢查相關的方法在情迷目錄內容NSFileManager類引用。

+0

明確檢查文件擴展名更好,因爲hasSuffix:會爲名爲「someplist」的文件返回「true」。 – Costique

+0

如果碰巧是一個plist文件,那真是太棒了。 – djromero