如何在iOS中扫描音频文件

时间:2015-12-23 14:18:23

标签: ios enumeration nsfilemanager

我的应用从服务器下载zip文件并将内容提取到设备。我需要一种方法来查找所有音频文件(mp3,mp4a,m4b等)。它还需要扫描所有子目录。现在这就是我在做的事情。

-(NSArray *)audioPathsInDirectory:(NSString *)directory {
    NSDirectoryEnumerator *enumerator =  [[NSFileManager defaultManager] enumeratorAtPath:directory];
    NSMutableArray *audioPathArray = [NSMutableArray array];
    NSString *partialFilePath;
    while (partialFilePath = [enumerator nextObject]) {
        if ([[partialFilePath pathExtension] isEqualToString:@"m4b"] ||
            [[partialFilePath pathExtension] isEqualToString:@"m4a"] ||
            [[partialFilePath pathExtension] isEqualToString:@"mp3"]) {
            [audioPathArray addObject:partialFilePath];
        }
    }
    return audioPathArray;
}

我担心“isEqualToString:”部分会遗漏一些东西。有没有更好的方法来实现这一目标?

1 个答案:

答案 0 :(得分:0)

My worry is that the "isEqualToString:" parts will miss some things你是什么意思?

您的方法没有任何问题,但在比较之前使用lowercaseString更好地转换扩展名,以确保它能够处理大小写敏感。