获取Assets.xcassets中的文件夹和文件列表 [英] Get list of folder and files within Assets.xcassets

查看:791
本文介绍了获取Assets.xcassets中的文件夹和文件列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个问题:


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

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

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

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. 不,它不会妨碍你的表现。如果您在加载大型或多个文件时遇到问题,请参阅此 - 是否可以将压缩的音频文件直接加载到缓冲区而不进行转换?

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

Get all folder and subfolder.

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

对于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.
}

这篇关于获取Assets.xcassets中的文件夹和文件列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆