如何在Swift中使用Base64编码的字符串创建图像?

Mic*_*ola 9 base64 uiimageview ios swift

Web服务将Base64编码的图像作为字符串回显.如何在Swift项目中解码和显示此编码图像?

具体来说,我想将一个已经由Web服务提供的图像作为Base64格式的字符串,并了解如何在UIImageView中显示它.

到目前为止我发现的文章描述了弃用的技术或用Objective-C编写,我不熟悉.你如何接受Base64编码的字符串并将其转换为UIImage?

Ste*_*ntz 25

NSData通过执行以下操作将base64编码的字符串转换为实例:

let encodedImageData = ... get string from your web service ...
let imageData = NSData(base64EncodedString: encodedImageData options: .allZeros)
Run Code Online (Sandbox Code Playgroud)

然后将imageData转换为UIImage:

let image = UIImage(data: imageData)
Run Code Online (Sandbox Code Playgroud)

然后,您可以设置图像UIImageView,例如:

imageView.image = image
Run Code Online (Sandbox Code Playgroud)

  • 在Swift 3/4中,它是`Data(base64Encoded:encodedImageData)` (5认同)
  • 在Swift 2.中,让imageData = NSData(base64EncodedString:encodedImageData options:[]) (3认同)