使用引用计数计算目录中的文件数

Counting number of files in Directory with reference counting

我有一个使用创建文件夹引用方法导入的图像文件夹,因为我想使用 URLForResoure 调用图像以传输到 Watch。 在我传输图像之前,我想在文件夹中对它们进行计数。 我能够使用此代码获取 folderURL 路径:

let documentsURL = NSFileManager.defaultManager().URLsForDirectory(.DocumentDirectory, inDomains: .UserDomainMask)[0]

    let folderURL = documentsURL.URLByAppendingPathComponent("Folder/SubFolder", isDirectory: true)

但无法访问此文件夹中的文件。

我想访问文件并用相同的前缀或在子文件夹中对它们进行计数。

请帮忙。

这很简单我的朋友

 let fileManager =            NSFileManager.defaultManager()
 var error : NSError?
 if let files =       fileManager.contentsOfDirectoryAtPath(folde  rURL, error: &error) {
    let count = files.count
   // ...
   } else {
    println("Could not get contents of     directory: \(error?.localizedDescription)")
    }

这是目录内容的计数:

   let fileManager = NSFileManager.defaultManager()
   let documentsPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0] as String
   var dirContents = try? fileManager.contentsOfDirectoryAtPath(documentsPath)
   let count = dirContents?.count

我使用这行代码解决了我的问题:

let URL = NSBundle.mainBundle().URLsForResourcesWithExtension("jpg", subdirectory: "Folder/SubFolder")
let count = (excerciseImagesForAnimationURL?.count)!

斯威夫特3

let fileManager = FileManager.default
let documentsPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as String
let dirContents = try? fileManager.contentsOfDirectory(atPath: documentsPath)
let count = dirContents?.count
if count == 0{
   disableTabBarHistory()// or whatever...
}