今日では(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