Swift:
Kontrollera om en katalog existerar
Hur:
Swifts Foundation-ramverk tillhandahåller FileManager-klassen, som har metoder för att hantera filsystemet. Du kan använda FileManager för att kontrollera om en katalog finns. Här är en kodsnutt för hur man gör detta:
import Foundation
let fileManager = FileManager.default
let path = "/path/to/your/directory"
if fileManager.fileExists(atPath: path, isDirectory: nil) {
print("Katalogen finns")
} else {
print("Katalogen finns inte")
}Detta kontrollerar dock både filer och kataloger. Om du specifikt vill verifiera att en katalog finns, behöver du skicka en pekare till ett Booleskt värde i isDirectory:
import Foundation
let fileManager = FileManager.default
let path = "/path/to/your/directory"
var isDirectory: ObjCBool = false
if fileManager.fileExists(atPath: path, isDirectory: &isDirectory), isDirectory.boolValue {
print("Katalogen finns")
} else {
print("Katalogen finns inte")
}Användning av ett tredjepartsbibliotek
Som det är nu, kräver inte kontrollen av om en katalog finns i Swift vanligtvis tredjepartsbibliotek på grund av FileManager-klassens robusthet. Dock, för mer komplex filhantering och kontroll, erbjuder bibliotek som Files av John Sundell ett mer Swift-vänligt API.
Så här kan du använda det:
Först, lägg till Files i ditt projekt via Swift Package Manager.
Sedan kan du kontrollera om en katalog finns på följande sätt:
import Files
do {
_ = try Folder(path: "/path/to/your/directory")
print("Katalogen finns")
} catch {
print("Katalogen finns inte")
}Notera: Eftersom tredjepartsbibliotek kan ändra sig, referera alltid till den senaste dokumentationen för användning och bästa praxis.