获取Assets.xcassets中的文件夹和文件列表

时间:2016-10-17 03:18:14

标签: ios objective-c xcode xcasset

我有两个问题:

  1. 我在Assets.xcassets中添加了大量的mp3文件,这有什么性能问题吗?

  2. 在Assets.xcassets中,我创建了文件夹&子文件夹,并将mp3文件放在这些文件夹中。现在在我的代码中,我想获取这些文件夹名称的列表以及该文件夹中的文件列表。有可能吗?

1 个答案:

答案 0 :(得分:-1)

  1. 不,它不会妨碍您的表现。如果您在加载大型或多个文件时遇到问题,请参阅 - Is it possible to load a compressed audio file directly into a buffer, without conversion?

  2. 获取所有文件夹和子文件夹。

  3. 对象:

        NSArray *mainpaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,   NSUserDomainMask, YES);
    NSString *documentsDir = [mainpaths objectAtIndex:0];
    
    NSFileManager *Filemanager = [NSFileManager defaultManager];
    NSArray *fileList = [Filemanager contentsOfDirectoryAtPath:documentsDir error:nil];
    for (NSString *s in fileList){
        NSLog(@"YOu subfolder--%@", s);
    }
    

    对于swift:

        let documentsDirectory =  try! NSFileManager().URLForDirectory(.DocumentDirectory, inDomain: .UserDomainMask, appropriateForURL: nil, create: true)
    let fileEnumerator = NSFileManager.defaultManager().enumeratorAtURL(documentsDirectory, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions(), errorHandler: nil)
    while let file = fileEnumerator?.nextObject() {
       //get all file name here.
    }