在Swift中将UIImage转换为Base64字符串及反向转换
大家好!我是Swift和iOS开发的新手。我正在编写一个应用程序,需要将图像以Base64字符串的形式发送到服务器,然后接收回来并显示。但我在转换时遇到了问题。
以下是我尝试的代码:
```swift
// 将UIImage转换为Base64
let image = UIImage(named: "photo.jpg")
let imageData = UIImageJPEGRepresentation(image!, 0.5)
let base64String = imageData?.base64EncodedString(options: .lineLength64Characters)
print(base64String ?? "No data")
```
但服务器收到的是空字符串或错误的数据。当我尝试解码回来时:
```swift
// 将Base64转换回UIImage
let decodedData = Data(base64Encoded: base64String!, options: .ignoreUnknownCharacters)
let decodedImage = UIImage(data: decodedData!)
imageView.image = decodedImage
```
应用程序因force unwrap错误而崩溃。我知道我错误地使用了force unwrap,但即使使用optional binding也不成功。
请指教