1

This is how I create Data from UIImage:

let data = UIImagePNGRepresentation(image)

And then I need to convert it to String;

    if let data = data {
        let stringFromData = String(data: data, encoding: .utf8)
    }

but stringFromData is nil. Why?

Bartłomiej Semańczyk
  • 59,234
  • 49
  • 233
  • 358

2 Answers2

4

You can get it using the Data method base64EncodedString()

if let data = data {
    let stringFromData = data.base64EncodedString()
    //  to decode base 64 string you can use Data base64Encoded String initializer
    if let dataFromBase64 = Data(base64Encoded: stringFromData) {
        print(data)
    }
}
Leo Dabus
  • 229,809
  • 59
  • 489
  • 571
0

Convert Your image data in Base64 string

For Encode

let stringFromData : Data = Data(base64Encoded: strBase64, options: .ignoreUnknownCharacters)!

And decode

let strBase64 = imageData.base64EncodedStringWithOptions(.allZeros)
Jignesh Mayani
  • 6,937
  • 1
  • 20
  • 36