Avatar ·

在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也不成功。 请指教