swift:如何将base64String编码的Image保存到本地目录中

时间:2017-01-25 06:48:07

标签: ios swift uiimagepickercontroller

我正在尝试将照片保存到本地目录中。我使用UIImagePickerView使用Swift控制器。上传图片后,我得到了 base64String 上传的图片回复。

我将它们转换如下:

//encoding
let base64String = imageData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
print(base64String)


//decoding
let decodedData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0))
var decodedimage = UIImage(data: decodedData!)
print(decodedimage)

//Turning base64 encoded string into an NSData
let encodedImageData = base64String
let FinalimageData = NSData(base64EncodedString: encodedImageData, options: [])
print(FinalimageData)

let image = UIImage(data: FinalimageData!)

要求:

  

我想将图像保存到本地目录。如何使用Swift 2完成此操作。

2 个答案:

答案 0 :(得分:1)

您可以通过以下方式将图像保存在本地目录中。使用fileName添加图片扩展名。

let filePath = "\(NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0])/\(fileName)"
let imageData : Data = UIImagePNGRepresentation(image)! as Data
 imageData.write(toFile: filePath, atomically: true)

答案 1 :(得分:0)

let documentsURL = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
    let fileURL = documentsURL.appendingPathComponent("\(fileName).png")
    if let pngImageData = UIImagePNGRepresentation(image) {
    pngImageData.write(to: fileURL, options: .atomic)
}