Swift:将 base64 转换为图像无效
Swift: Convert base64 to image not working
你好,我尝试将字符串 base64 转换为图像,但它不起作用,我创建了一个扩展,但它 returns me null,这是我的扩展:
extension UIImage {
public var base64: String {
return self.jpegData(compressionQuality: 1.0)!.base64EncodedString()
}
convenience init?(base64: String) {
guard let data = Data(base64Encoded: base64, options: .ignoreUnknownCharacters) else { return nil }
self.init(data: data)
}
}
这里是字符串:
data:image/jpeg;base64,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
字符串显然没有问题,因为我在这个 site 上试过了,它有效。
可能是什么问题?
解决方案
如果base64字符串中有前缀data:image/jpeg;base64,
,那么在convenience init中设置参数withPrefix
为true
extension UIImage {
public var base64: String {
return self.jpegData(compressionQuality: 1.0)!.base64EncodedString()
}
convenience init?(base64: String, withPrefix: Bool) {
var finalData: Data?
if withPrefix {
guard let url = URL(string: base64) else { return nil }
finalData = try? Data(contentsOf: url)
} else {
finalData = Data(base64Encoded: base64)
}
guard let data = finalData else { return nil }
self.init(data: data)
}
}
你好,我尝试将字符串 base64 转换为图像,但它不起作用,我创建了一个扩展,但它 returns me null,这是我的扩展:
extension UIImage {
public var base64: String {
return self.jpegData(compressionQuality: 1.0)!.base64EncodedString()
}
convenience init?(base64: String) {
guard let data = Data(base64Encoded: base64, options: .ignoreUnknownCharacters) else { return nil }
self.init(data: data)
}
}
这里是字符串:
data:image/jpeg;base64,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
字符串显然没有问题,因为我在这个 site 上试过了,它有效。
可能是什么问题?
解决方案
如果base64字符串中有前缀data:image/jpeg;base64,
,那么在convenience init中设置参数withPrefix
为true
extension UIImage {
public var base64: String {
return self.jpegData(compressionQuality: 1.0)!.base64EncodedString()
}
convenience init?(base64: String, withPrefix: Bool) {
var finalData: Data?
if withPrefix {
guard let url = URL(string: base64) else { return nil }
finalData = try? Data(contentsOf: url)
} else {
finalData = Data(base64Encoded: base64)
}
guard let data = finalData else { return nil }
self.init(data: data)
}
}