我从webservice响应中获得了一个base64String并将其存储在NSData中,如何在Swift中将该base64String转换为字符串?
//Code
var jsonResult = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &err) as! NSDictionary // Response JSON from webservice
var base64String : String = ""
base64String = jsonResult["Base64String"] as! String // Retrieve base64String as string from json response
println("Base64String Alone: \(base64String)")
// Code to decode that base64String
let decodedData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0))
println("Decoded: \(decodedData)")
let decodedString = NSString(data: decodedData!, encoding: NSUTF8StringEncoding)
println(decodedString) // Prints nil
如果一个文件只包含文本,则base64String的编码和解码正常工作,但如果文件包含一些表格格式/图像,则编码和解码都会产生无效的base64String。如何将文件转换为base64String编码,并对文件内容进行编码和解码?
支持的文件格式为doc、docx、pdf、txt。
提前感谢任何帮助!
base64Encoded
字符串是有效的,因为问题中的字符串无效。 - nRewik