在 /Users/Shared/ 创建目录 - 使用 Swift
Creating a directory at /Users/Shared/ - using Swift
我正在使用以下代码在 /Users/Shared/ 中创建一个目录,以便在所有用户之间共享我的应用程序数据。当我 运行 代码得到以下输出时。
2019-03-08 19:41:41.751418+0530 MyApp[7224:488397] Couldn't create document directory
2019-03-08 19:41:41.754026+0530 MyApp[7224:488397] Document directory is file:///Users/Appname
let fileManager = FileManager.default
if let tDocumentDirectory = fileManager.urls(for: .userDirectory, in: .localDomainMask).first {
let filePath = tDocumentDirectory.appendingPathComponent("Appname")
if !fileManager.fileExists(atPath: filePath.path) {
do {
try fileManager.createDirectory(atPath: filePath.path, withIntermediateDirectories: true, attributes: nil)
} catch {
NSLog("Couldn't create document directory")
}
}
NSLog("Document directory is \(filePath)")
}
我不明白为什么会出现这个错误。如何做到这一点?
请仔细阅读日志消息。
您正试图在 /Users/Shared
中创建 file:///Users/Appname
文件夹 而不是 。您必须附加 "Shared/Appname"
.
我们鼓励您使用 FileManager 的 URL 相关 API(以及更少混淆的变量名称)
let fileManager = FileManager.default
let userDirectory = try! fileManager.url (for: .userDirectory, in: .localDomainMask, appropriateFor: nil, create: false)
let folderURL = userDirectory.appendingPathComponent("Shared/Appname")
if !fileManager.fileExists(atPath: folderURL.path) {
do {
try fileManager.createDirectory(at: folderURL, withIntermediateDirectories: true, attributes: nil)
} catch {
print("Couldn't create document directory", error)
}
}
print("Document directory is \(folderURL)")
我正在使用以下代码在 /Users/Shared/ 中创建一个目录,以便在所有用户之间共享我的应用程序数据。当我 运行 代码得到以下输出时。
2019-03-08 19:41:41.751418+0530 MyApp[7224:488397] Couldn't create document directory
2019-03-08 19:41:41.754026+0530 MyApp[7224:488397] Document directory is file:///Users/Appname
let fileManager = FileManager.default
if let tDocumentDirectory = fileManager.urls(for: .userDirectory, in: .localDomainMask).first {
let filePath = tDocumentDirectory.appendingPathComponent("Appname")
if !fileManager.fileExists(atPath: filePath.path) {
do {
try fileManager.createDirectory(atPath: filePath.path, withIntermediateDirectories: true, attributes: nil)
} catch {
NSLog("Couldn't create document directory")
}
}
NSLog("Document directory is \(filePath)")
}
我不明白为什么会出现这个错误。如何做到这一点?
请仔细阅读日志消息。
您正试图在 /Users/Shared
中创建 file:///Users/Appname
文件夹 而不是 。您必须附加 "Shared/Appname"
.
我们鼓励您使用 FileManager 的 URL 相关 API(以及更少混淆的变量名称)
let fileManager = FileManager.default
let userDirectory = try! fileManager.url (for: .userDirectory, in: .localDomainMask, appropriateFor: nil, create: false)
let folderURL = userDirectory.appendingPathComponent("Shared/Appname")
if !fileManager.fileExists(atPath: folderURL.path) {
do {
try fileManager.createDirectory(at: folderURL, withIntermediateDirectories: true, attributes: nil)
} catch {
print("Couldn't create document directory", error)
}
}
print("Document directory is \(folderURL)")