NSPredicate를 이용하면 마치 Array를 마치 sql 처럼 사용 가능하다. 

자세한 사용법은 Apple dev documents 싸이트 참조

https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/Predicates/Articles/pUsing.html 


전체 파일 목록에서 extension 확장자를 가진 것만 따로 Array로 반환. 더 좋은 방법이 있을지도... 


- (NSArray *)getFileNamesByExtension:(NSString *)extension {

    // get path

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectoryNSUserDomainMaskYES);

    NSString *documentsDirectory = [paths objectAtIndex:0];

    

    NSFileManager *fileManeger = [NSFileManager defaultManager];

    NSArray *listContents = [fileManeger contentsOfDirectoryAtPath:documentsDirectory error:nil];

    

    NSString *format = [NSString stringWithFormat:@"self ENDSWITH '.%@'", extension];

    NSPredicate *filter = [NSPredicate predicateWithFormat:format];

    NSArray *filesnameArray = [listContents filteredArrayUsingPredicate:filter]; 

    

    return filesnameArray;

}

Posted by KraZYeom