Search code examples
iosswiftxcode6nsfilemanager

Get list of files at path swift


Just trying to make a for..in loop for files in the local app folder

let filemanager:NSFileManager = NSFileManager()
let files = filemanager.enumeratorAtPath(NSHomeDirectory())
for filename in files!
{
    println(filename)
}

But it says Type 'NSDirectoryEnumerator' doesn't conform to protocol SequenceType.


Solution

  • I think this may be possible by implementing an extension to NSFileManager that implements the SequenceType protocol. But you could easily convert your code to using a while loop:

    let filemanager:FileManager = FileManager()
    let files = filemanager.enumerator(atPath: NSHomeDirectory())
    while let file = files?.nextObject() {
        print(file)
    }