Swift:
ตรวจสอบว่ามีไดเร็กทอรีหรือไม่
วิธีทำ:
โครงสร้างพื้นฐานของ Swift ให้คลาส FileManager
ซึ่งมีเมธอดในการจัดการระบบไฟล์ คุณสามารถใช้ FileManager
เพื่อตรวจสอบว่ามีไดเรกทอรีอยู่หรือไม่ นี่คือตัวอย่างโค้ดที่ทำแบบนี้:
import Foundation
let fileManager = FileManager.default
let path = "/path/to/your/directory"
if fileManager.fileExists(atPath: path, isDirectory: nil) {
print("Directory exists")
} else {
print("Directory does not exist")
}
อย่างไรก็ตาม สิ่งนี้ตรวจสอบทั้งไฟล์และไดเรกทอรี หากคุณต้องการตรวจสอบเฉพาะว่ามีไดเรกทอรีอยู่จริง คุณจำเป็นต้องส่งตัวชี้ค่าบูลีนใน 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("Directory exists")
} else {
print("Directory does not exist")
}
การใช้งานไลบรารีจากบุคคลที่สาม
ณ เวลานี้ การตรวจสอบการมีอยู่ของไดเรกทอรีใน Swift โดยทั่วไปไม่ต้องการไลบรารีจากบุคคลที่สาม เนื่องจากคลาส FileManager
นั้นมีประสิทธิภาพ อย่างไรก็ตาม สำหรับการจัดการไฟล์และตรวจสอบที่ซับซ้อนมากขึ้น ไลบรารีเช่น Files โดย John Sundell นั้นให้ API ที่เป็นมิตรกับ Swift มากขึ้น
นี่คือวิธีที่คุณอาจใช้:
ก่อนอื่น เพิ่ม Files เข้าไปในโปรเจกต์ของคุณผ่าน Swift Package Manager
จากนั้น คุณสามารถตรวจสอบการมีอยู่ของไดเรกทอรีได้ดังนี้:
import Files
do {
_ = try Folder(path: "/path/to/your/directory")
print("Directory exists")
} catch {
print("Directory does not exist")
}
หมายเหตุ: เนื่องจากไลบรารีจากบุคคลที่สามสามารถเปลี่ยนแปลงได้ จึงควรอ้างอิงเอกสารล่าสุดสำหรับการใช้งานและแนวปฏิบัติที่ดีที่สุดเสมอ