У меня есть простые фото принимая приложение и мне нужно, чтобы это очень просто преобразовать ImageData в кодировке Base64, это то, что я делаю:IOS взять фото и конвертировать в Base64 строку
if let videoConnection = stillImageOutput.connectionWithMediaType(AVMediaTypeVideo){
stillImageOutput.captureStillImageAsynchronouslyFromConnection(videoConnection) { (imageDataSampleBuffer, error) in
self.imageData = AVCaptureStillImageOutput.jpegStillImageNSDataRepresentation(imageDataSampleBuffer)
let base64String = self.imageData.base64EncodedDataWithOptions(NSDataBase64EncodingOptions(rawValue: 0))
print(base64String)
}
}
Я ожидал для получения строки, похожий на что-то вроде этого:
%2F9j%2F4AAQSkZJRgABAQAAAQABAAD%2F2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHB...
Однако то, что я получаю выглядит примерно так:
<2f396a2f 34414151 536b5a4a 52674142 41514141 53414249 4141442f 345142...
Что я делаю неправильно?
Просто чтобы прояснить, я фотосъемке наверняка, и я могу использовать:
self.image = UIImage(data: self.imageData)
UIImageWriteToSavedPhotosAlbum(self.image, self, nil, nil)
Чтобы сохранить его в устройство, поэтому фото, безусловно, есть.
Попробуйте так: http://stackoverflow.com/questions/24769074/base64encodedstringwithoptions-in-swift-fails -with-compile-error –
работал как шарм, спасибо, товарищ –