如何在运行以下代码时修复以下错误?我已经搜索过SO但是找不到Swift 3的任何内容。
HELPDESK_DASHBOARD
日志:
错误Domain = NSCocoaErrorDomain Code = 4“”。无法移除.DS_Store“。”的UserInfo = {NSFilePath =文件:///用户/ CIPL0469 /库/开发商/ CoreSimulator /设备/ F0106B28-C4D1-4FE2-A425-D04C6BFDDC01 /数据/容器/数据/应用/ A5AB9B7B-6174-4BA7-9EFD-0E9F1C98CB17 / Documents / .DS_Store,NSUserStringVariant =( 去掉 ),NSUnderlyingError = 0x60800004fed0 {错误域= NSPOSIXErrorDomain代码= 2“没有这样的文件或目录”}}
错误域= NSCocoaErrorDomain Code = 4“”2017-01-31_10-44-21.m4a“无法删除。”的UserInfo = {NSFilePath =文件:///用户/ CIPL0469 /库/开发商/ CoreSimulator /设备/ F0106B28-C4D1-4FE2-A425-D04C6BFDDC01 /数据/容器/数据/应用/ A5AB9B7B-6174-4BA7-9EFD-0E9F1C98CB17 / Documents / 2017-01-31_10-44-21.m4a,NSUserStringVariant =( 去掉 ),NSUnderlyingError = 0x60800004fa80 {Error Domain = NSPOSIXErrorDomain Code = 2“No such file or directory”}}
错误域= NSCocoaErrorDomain Code = 4“”2017-01-31_10-44-26.m4a“无法删除。”的UserInfo = {NSFilePath =文件:///用户/ CIPL0469 /库/开发商/ CoreSimulator /设备/ F0106B28-C4D1-4FE2-A425-D04C6BFDDC01 /数据/容器/数据/应用/ A5AB9B7B-6174-4BA7-9EFD-0E9F1C98CB17 / Documents / 2017-01-31_10-44-26.m4a,NSUserStringVariant =( 去掉 ),NSUnderlyingError = 0x60000004f570 {错误域= NSPOSIXErrorDomain代码= 2“没有这样的文件或目录”}}
答案 0 :(得分:2)
nextObject()
的 (NS)DirectoryEnumerator
始终返回枚举项的完整路径/ url,另外的连接会中断路径。除了将URL
和String
与字符串插值连接起来以将其作为path
参数传递之外,其形式根本不起作用。
我建议使用与网址相关的API
let fileManager = FileManager.default
do {
let url = try fileManager.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false)
if let enumerator = fileManager.enumerator(at: url, includingPropertiesForKeys: nil) {
while let fileURL = enumerator.nextObject() as? URL {
try fileManager.removeItem(at: fileURL)
}
}
} catch {
print(error)
}
答案 1 :(得分:0)
只是说清楚:
let addr = one["resourceAddr"] as! String
do{
try FileManager.default.removeItem(at: URL(string:addr)!)
}
catch let error as NSError{print("error: ",error.localizedDescription)}