查找根目录中的所有文件夹
Posted
技术标签:
【中文标题】查找根目录中的所有文件夹【英文标题】:Find all Folders in Root Directory 【发布时间】:2009-08-14 12:58:32 【问题描述】:我正在开发一个可可应用程序。我需要搜索选定文件夹中的所有歌曲。我使用 “subpathsAtPath”获取所选文件夹中的所有组件。如果用户选择像 /User/Music 这样的特定文件夹,这可以正常工作。但是如果用户选择像“/”这样的根目录,那么这个方法就会挂起。有没有办法解决这个问题。 提前谢谢.....
【问题讨论】:
是挂起还是需要很长时间? 【参考方案1】:正如肯特所说,这个方法不太可能挂起,它只是需要很长时间才能执行并阻止线程中的进一步执行,直到它返回。
考虑使用enumeratorAtPath:
。它使用 NSDirectoryEnumerator 并一次为您提供一个目录。这将消除创建一个非常大的数组的需要,这在内存方面是昂贵的。我还让你更容易将你的工作分解成块(NSOperations?),这样你就可以将它推到另一个线程,考虑到完成所需的时间,这可能是一个好主意。 NSDirectoryEnumerator 还可以让您对枚举进行一些控制,即您可以调用 -skipDescendents
[sic] 来修剪枚举树。
【讨论】:
以上是关于查找根目录中的所有文件夹的主要内容,如果未能解决你的问题,请参考以下文章
如何在使用查找时列出没有绝对路径的目录中的所有文件及其文件大小