将数据转换为字符串会返回 nil 值。
Code:
// thus unwraps the image
if let image = image{
print("Saving image data")
// don't unwrap here
if let data = UIImagePNGRepresentation(image){
let str = String(data: data, encoding: .utf8)
print(str)
}
}
我不知道原因。
另外,如何将字符串转换回数据?
这不起作用,因为当您将图像的字节解释为字符串时,该字符串无效。并非所有混乱的数据都是有效的 utf8 字符串。即并非每个 n 位(8 位,有时 16 位)的集合都是有效的 utf8 代码点。 Swift String api 循环遍历您传递给它的数据对象以验证它是否是有效的字符串。在您的情况下,没有理由认为此 Data 是有效的字符串,因此它不起作用。
关于 utf8 的好读物:https://www.objc.io/issues/9-strings/unicode/ https://www.objc.io/issues/9-strings/unicode/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)