我的应用必须从某些网址下载用户个人资料图片。 因此,我正在用户的“Documents”文件夹中创建“images”文件夹。 创建文件夹工作正常,也可以下载图像并将图像移动到此文件夹。
在创建之前,我检查“images”文件夹是否存在。
var isDirectory: ObjCBool = ObjCBool.init(false)
fileManager.fileExists(atPath: imageFolder.absoluteString, isDirectory: &isDirectory)
if !isDirectory.boolValue { // directory does not exist
do {
try fileManager.createDirectory(at: imageFolder, withIntermediateDirectories: true, attributes: nil)
self.imageFolder = imageFolder
print("Created image folder.")
} catch let error {
print(error.localizedDescription)
}
}
在每个应用启动时fileExists()
都会返回false
,尽管文件夹存在:
(lldb)po imageFolder
▿file:/// Users / [...] / CoreSimulator / Devices / CE56339A-2A1A-4105-97A6-828E96ADD341 / data / Containers / Data / Application / C2CC9A93-E9A4-4069-9FB5-771DDAEAA454 / Documents /图像/
但imageFolder.checkResourceIsReachable()
会返回true
。
(lldb)po imageFolder.checkResourceIsReachable()
真
每个其他fileExists()
电话也是如此 - >虽然文件/文件夹存在,但总是false
。
有没有人经历过类似的事情? 任何建议如何调试此错误? FileManager错误!?