迭代documentDirectory

时间:2016-07-13 09:44:24

标签: ios swift swift3

我正在尝试获取documentDirectory的总文件大小,但fileSize属性没有给我正确的值。然后我尝试获取documentDirectory中所有文件夹的fileSize属性,显然所有文件夹的大小都相同。

由于这两次尝试失败,我决定尝试获取documentDirectory中每个文件(不是文件夹)的值,因此需要遍历每个文件夹,以查找文件。

文件夹结构

documentDirectory
  -folder
    -file
    -file
    -file
    -folder
       -file
       -file
  -folder
    -file
    -file

我目前的代码,为了获取documentDirectory中的文件列表如下,我无法弄清楚如何让这段代码按照我的意愿运行。

当前代码

let fileManager = FileManager.default
let paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
let documentsDirectory: AnyObject = paths[0]

do {
    let fileNames = try fileManager.contentsOfDirectory(atPath: "\(documentsDirectory)")
    for fileName in fileNames {
        //do things with the file
    }
} catch {
    print(error)
}

编辑:这是我用来尝试获取documentDirectory

大小的代码
let fileManager = FileManager.default
let paths = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
let documentsDirectory: AnyObject = paths[0]
var fileSize : UInt64 = 0

do {
    let attr : NSDirectory? = try fileManager.attributesOfItem(atPath: documentsDirectory as! String)

    if attr != nil {
        fileSize = attr!.fileSize()
    }

} catch {
    print(error)
}

0 个答案:

没有答案