Get list of folder and files within Assets.xcasset

2019-02-25 03:23发布

I have 2 questions:

  1. I'm adding large amount of mp3 files into Assets.xcassets, is there any performance issue with this?

  2. Within Assets.xcassets, I create folders & sub folders, and put mp3 files in those folders. Now in my code, I want to get list of those folders name and also list of files inside that folder. Is it possible?

1条回答
\"骚年 ilove
2楼-- · 2019-02-25 04:01
  1. No it will not hamper your performance. If you face issue with loading large or many files, see this-Is it possible to load a compressed audio file directly into a buffer, without conversion?

  2. Get all folder and subfolder.

For Obj c:

    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);
}

For 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.
}
查看更多
登录 后发表回答