Hoşgeldin. Soru sormak veya cevaplamak için hemen üye ol.
0 oy
376 kez görüntülendi
ios development kategorisinde tarafından
Documents directory altında oluşturduğum bir klasör var. İstiyorum ki bu klasör aynen yerinde kalsın ama eğer içinde dosyalar varsa hepsi silinsin. Bunu swift ile nasıl yapabilirim ? Yardımcı olabilir misiniz ?

1 cevap

+1 oy
tarafından
tarafından seçilmiş
 
En İyi Cevap

folder'in içerisindeki her bir dosyanın yolunu bir loop kullananrak bulup teker teker silmelisiniz.

let fileManager = NSFileManager.defaultManager()
let paths = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)
let fullPath = paths[0].stringByAppendingPathComponent("myFolder")
var fullPathItemIsADirectory:ObjCBool = false
if fileManager.fileExistsAtPath(fullPath, isDirectory: &fullPathItemIsADirectory) {
    if fullPathItemIsADirectory {
        var error:NSError?
        for itemPath in fileManager.contentsOfDirectoryAtPath(fullPath, error: &error) as! [String] {
            let fullItemPath = fullPath.stringByAppendingPathComponent(itemPath)
            if fileManager.removeItemAtPath(fullItemPath, error: &error) {
                println("item deleted at path:\(fullItemPath)")
            } else {
                if error != nil {
                    println("deletion error at path:\(fullItemPath) error:\(error!.localizedDescription)")
                }
            }
            error = nil
        }
    } else {
        println("item is not directory at path:\(fullPath)")
    }
} else {
    println("there is no such a directory at path:\(fullPath)")
}
tarafından
Çok teşekkür ederim. Eksik olmayın. Sayenizde çok şey öğreniyorum.
tarafından
İyi bayramlar. Swift 2'ye uyarlamak istedim bu kodları. Ancak çıkan hataları bir türlü düzeltemedim. Uygun vaktinizde rica etsem Swift 2'ye uyarlanmış halini paylaşma şansınız olabilir mi ?

Teşekkürler şimdiden.
tarafından
Halletim; gerçi tekme tokat oldu ama temiz oldu :)
...