我有这段代码:
let image = UIImage(data: downloadedImage!)
let convertImage = UIImagePNGRepresentation(image!)
let pathUIDImage = self.getDocumentsDirectory().appendingPathComponent(playersUID + "Image")
try? convertImage!.write(to: pathUIDImage) //working
let playersUIDImageVersion = "1"
var pathUIDImageVersion = self.getDocumentsDirectory().appendingPathComponent(playersUID + "ImageVersion")
try? playersUIDImageVersion.write(to: pathUIDImageVersion) //error
错误是:
无法将“网址”类型的值转换为预期的工具类型“inout _”
当我替换试试? playersUIDImageVersion试试? convertImage!错误消失了。将不同类型的值写入目录之间是否存在差异?谢谢。函数getDocumentsDirectory
下面func getDocumentsDirectory() -> URL {
let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
let documentsDirectory = paths[0]
return documentsDirectory
}
答案 0 :(得分:1)
write
的{{1}}功能不同,需要其他参数String
和atomically
。
encoding
在这种情况下,重新键入函数并查看Xcode为代码完成建议的内容。
除此之外,强烈建议您始终使用适当的文件扩展名(try? playersUIDImageVersion.write(to: pathUIDImageVersion, atomically: true, encoding: .utf8)
,.png
)。