2014-11-06 3 views
0

이미지 데이터를 base64EncodedString으로 인코딩하고 NSSSSerialization을 사용하여 iOS 기기에서 다른 기기로 보낼 수 있습니다.NSJSONSerialization으로받은 데이터를 base64EncodedString으로 디코딩하고 Swift에서 NSData로 변환하는 방법

또한 이미지 데이터를 base64EncodedString으로받을 수는 있지만 수신 된 base64EncodedString을 iOS 기기를 수신 할 때 이미지로 변환 할 수 없습니다.

우리는이 시점에서 다음 코드

let gotInfo = notification.userInfo! as Dictionary 
    let receivedData:NSData = gotInfo["data" ] as NSData 
    let message = NSJSONSerialization.JSONObjectWithData(receivedData, options:NSJSONReadingOptions.AllowFragments, error: nil) as NSDictionary 
    let receivedString = message 
    let receivedD: AnyObject? = message.objectForKey("Field") 
    println ("received2: \(receivedD)") 

를 사용 base64EncodedString받은 경우 우리는 테스트 "에 println은"이미지의 base64EncodedString는 표시하지만 다음 코드는 "추가 인수 'base64EncodedString'incall"오류를 제공하고 우리는 이유를 찾을 수 없습니다 이 오류가 발생했습니다. 우리는 우리가 더 많은 시간 검색 및 시도 후

let decodedimage = UIImage(data: decodedData!) 

답변

3

를 사용하여 이미지로 변환 희망을 NSData로 수신 된 데이터를 변환 할 수 있습니다되면

let decodedData = NSData(base64EncodedString: receivedD, options:NSDataBase64DecodingOptions()) 

, 우리는 대답을했다. 우리는

 let decodedData = NSData(base64EncodedString: receivedD! as String, options: NSDataBase64DecodingOptions()) 

 let decodedData = NSData(base64EncodedString: receivedD, options:NSDataBase64DecodingOptions()) 

을 대체하고 여기에 사진입니다.