Swift:
Sjekker om en mappe eksisterer
Hvordan:
Swifts Foundation-rammeverk tilbyr FileManager
-klassen, som har metoder for å håndtere filsystemet. Du kan bruke FileManager
for å sjekke om en katalog eksisterer. Her er et kodeutdrag om hvordan du gjør dette:
import Foundation
let fileManager = FileManager.default
let path = "/sti/til/din/katalog"
if fileManager.fileExists(atPath: path, isDirectory: nil) {
print("Katalogen eksisterer")
} else {
print("Katalogen eksisterer ikke")
}
Men, dette sjekker for både filer og kataloger. Hvis du spesifikt ønsker å verifisere at en katalog eksisterer, må du sende en peker til en Boolesk verdi i isDirectory
:
import Foundation
let fileManager = FileManager.default
let path = "/sti/til/din/katalog"
var isDirectory: ObjCBool = false
if fileManager.fileExists(atPath: path, isDirectory: &isDirectory), isDirectory.boolValue {
print("Katalogen eksisterer")
} else {
print("Katalogen eksisterer ikke")
}
Bruke et tredjepartsbibliotek
Per nå krever vanligvis ikke sjekking for eksistensen av en katalog i Swift tredjepartsbiblioteker på grunn av robustheten til FileManager
-klassen. Men, for mer kompleks filmanipulasjon og sjekking, tilbyr biblioteker som Files av John Sundell en mer Swift-vennlig API.
Slik kan du bruke det:
Først, legg til Files i prosjektet ditt via Swift Package Manager.
Deretter kan du sjekke for eksistensen av en katalog slik:
import Files
do {
_ = try Folder(path: "/sti/til/din/katalog")
print("Katalogen eksisterer")
} catch {
print("Katalogen eksisterer ikke")
}
Merk: Siden tredjepartsbiblioteker kan endres, referer alltid til den nyeste dokumentasjonen for bruk og beste praksiser.