2015-10-06 10 views
6

Il mio codice stava lavorando bene su Xcode 6.4 con Swift 1.2:Base64 codifica/decodifica con Swift 2

var imageData = UIImageJPEGRepresentation(firstImageView.image!, 0.2) 

let base64String = imageData!.base64EncodedStringWithOptions(.allZeros) 

Una volta mi sono trasferito a Xcode 7 e Swift 2 è apparso il seguente errore:

tipo di espressione è ambigua, senza più contesto

Così ho provato:

let base64String = imageData!.base64EncodedStringWithOptions(options: NSDataBase64EncodingOptions.allZeros) 

Ma non esiste l'opzione "allZeros" tra NSDataBase64EncodingOptions.

risposta

9

Si consiglia di utilizzare .Encoding64CharacterLineLength invece di .allZeros:

let imageData = UIImageJPEGRepresentation(firstImageView.image!, 0.2) 

let base64String = imageData!.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.Encoding64CharacterLineLength) 
+0

ha funzionato! Grazie – Alaa

+0

Prego. – Moritz