gpt4 book ai didi

ios - FileManager.createDirectory 失败,NSCocoaErrorDomain 代码 : 518

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:08 28 4
gpt4 key购买 nike

我在做

    let tempDirectory = URL(string: "\(NSTemporaryDirectory())video/")!
do {
try FileManager.default.createDirectory(
at: tempDirectory,
withIntermediateDirectories: true)
} catch { report(error) }

这通常会抛出 NSCocoaErrorDomain 代码:518。

知道原因吗?我认为可以,因为那里已经有东西了,所以我添加了

    var isDir: ObjCBool = false
if FileManager.default.fileExists(
atPath: tempDirectory.absoluteString,
isDirectory: &isDir
) {
if isDir.boolValue {
print("Temp directory exists on launch")
}
else {
print("Temp directory exists on launch and is a file")
}
return
}

但这似乎并没有捕捉到任何东西

最佳答案

您构建的 tempDirectory 不正确。你想要:

let tempDirectory = URL(fileURLWithPath: NSTemporaryDirectory()). appendingPathComponent("video")

您的代码存在的问题是您没有将值 URL 字符串传递给 URL(string:)。由于您有文件路径,因此您需要使用 URL(fileURLWithPath:)。并使用提供的方法构建路径/URL,以确保正确添加斜杠和其他部分。

从您的原始代码打印您的 tempDirectory 值,然后从我的答案中的代码打印新值。请注意关键区别。

您的网址将类似于:

/var/...

它可能在“video”之前缺少斜线。

正确的文件 URL 应该是这样的:

file:///var/...

关于ios - FileManager.createDirectory 失败,NSCocoaErrorDomain 代码 : 518,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40444818/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com