You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swift中如何将Base64图片字符串转换为UIImage?

iOS中Data URI格式Base64字符串转UIImage

要把接口返回的data:image/png;base64,...格式字符串转为UIImage,按以下步骤处理即可:

  • 剥离字符串开头的data:image/png;base64,前缀,提取纯Base64编码内容
  • 将纯Base64字符串转换为Data类型
  • 通过UIImage(data:)初始化图片

Swift 代码示例

// 假设已解码得到包含img字段的对象,示例命名为userModel
let imgDataURI = userModel.img

// 提取纯Base64部分(兼容不同图片格式的前缀)
guard let pureBase64 = imgDataURI.components(separatedBy: ",").last else {
    // 前缀解析失败,可添加错误提示或默认图逻辑
    return
}

// Base64转Data
guard let imageData = Data(base64Encoded: pureBase64) else {
    // Base64解码失败,处理异常情况
    return
}

// 生成UIImage
let targetImage = UIImage(data: imageData)

注意事项

  • 务必做好错误处理:如果Base64字符串无效、前缀格式异常,Data(base64Encoded:)或前缀提取步骤会返回nil,需添加兜底逻辑(比如显示默认占位图)
  • 该方法兼容JPEG等其他图片格式的Data URI,因为只通过逗号分割提取后缀的Base64内容,不需要针对不同图片格式修改代码

内容的提问来源于stack exchange,提问作者fabiobh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 20:33:26