我正在使用NSDirectoryEnmerator
查找后缀为png
和jpg
的所有文件,代码如下:
NSDirectoryEnumerator *directoryEnumerator = [[NSFileManager defaultManager] enumeratorAtURL:containerURL includingPropertiesForKeys:[NSArray array] options:0 errorHandler:^BOOL(NSURL *url, NSError *error) {
// handle error
return NO;
}];
NSString *fileOrDirectory = nil;
while ((fileOrDirectory = [directoryEnumerator nextObject])) {
if([fileOrDirectory hasSuffix:@".jpg"] || [fileOrDirectory hasSuffix:@".png"]){
NSLog(@" find a image file %@", fileOrDirectory );
}
}
但是有一个错误表示NSURL
没有方法hasSuffix
发生了什么以及如何使这项工作?迭代元素的类型究竟是什么?上面的代码经常由posts建议,并且被认为是NSString
,但它无法正常工作
答案 0 :(得分:1)
enumeratorAtURL
方法适用于NSURL
个对象而非字符串(异常原因清楚地显示),您只需比较pathExtension
:
if ([fileOrDirectory.pathExtension isEqualToString:@"jpg"] ||
[fileOrDirectory.pathExtension isEqualToString:@"png"]) { ...