NSFileManager.subpathsAtpath
和NSFileManager.subpathsOfDirectoryAtPath
有什么区别?
两者似乎都嵌套了目录和文件,而docs并没有说太多。
最佳答案
这两种方法具有历史渊源。较新的subpathsOfDirectoryAtPath:error:
显式替换(替代)较旧的subpathsAtPath:
。 [要了解这一点,请查看头文件。 Apple的文档并不擅长将旧的,被取代的方法标记为不受欢迎。]历史关系在iOS中不像在Mac OS X中那样明显或重要,在Mac OS X中这种新方法出现在Mac OS X中。 10.5。
结果可能看起来相同,但是它们却不同:
subpathsAtPath:
只能返回nil
来表示问题。这就是为什么在Swift中它返回Optional的原因。 subpathsOfDirectoryAtPath:error:
也(间接)返回一个错误来描述问题。这就是为什么在Swift 2及更高版本中将其标记为throws
的原因;它不返回Optional,但必须使用try
调用。 关于ios - subpathsAtPath与subpathsOfDirectoryAtPath,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35103453/