ปัจจุบัน (2016) Apple แนะนำให้ใช้ URL ที่เกี่ยวข้องกับ API ของ NSURL
, NSFileManager
ฯลฯ
เพื่อรับไดเร็กทอรีเอกสารใน iOS และSwift 2ใช้
let documentDirectoryURL = try! NSFileManager.defaultManager().URLForDirectory(.DocumentDirectory,
inDomain: .UserDomainMask,
appropriateForURL: nil,
create: true)
try!
มีความปลอดภัยในกรณีนี้เพราะไดเรกทอรีมาตรฐานนี้มีการประกันเพื่ออยู่
จากนั้นต่อท้ายองค์ประกอบเส้นทางที่เหมาะสมเช่นsqlite
ไฟล์
let databaseURL = documentDirectoryURL.URLByAppendingPathComponent("MyDataBase.sqlite")
ขณะนี้ตรวจสอบว่าไฟล์ที่มีอยู่กับของcheckResourceIsReachableAndReturnError
NSURL
let fileExists = databaseURL.checkResourceIsReachableAndReturnError(nil)
หากคุณต้องการข้อผิดพลาดให้ส่งNSError
ตัวชี้ไปที่พารามิเตอร์
var error : NSError?
let fileExists = databaseURL.checkResourceIsReachableAndReturnError(&error)
if !fileExists { print(error) }
Swift 3+:
let documentDirectoryURL = try! FileManager.default.url(for: .documentDirectory,
in: .userDomainMask,
appropriateFor: nil,
create: true)
let databaseURL = documentDirectoryURL.appendingPathComponent("MyDataBase.sqlite")
checkResourceIsReachable
ถูกทำเครื่องหมายว่าสามารถโยนได้
do {
let fileExists = try databaseURL.checkResourceIsReachable()
// handle the boolean result
} catch let error as NSError {
print(error)
}
ในการพิจารณาเฉพาะค่าที่ส่งคืนบูลีนและละเว้นข้อผิดพลาดให้ใช้ตัวดำเนินการ nil-coalescing
let fileExists = (try? databaseURL.checkResourceIsReachable()) ?? false