当前位置: 首页 > 面试题库 >

如何在Swift中将base64String转换为String?

澹台俊材
2023-03-14
问题内容

我从NSData的Web服务响应中接收到base64String,如何快速将base64String转换为String?

    //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

预先感谢您的任何帮助!


问题答案:

试试这个

let base64Encoded = "YW55IGNhcm5hbCBwbGVhc3VyZS4="

let decodedData = Data(base64Encoded: base64Encoded)!
let decodedString = String(data: decodedData, encoding: .utf8)!

print(decodedString)

println(decodedString)

确保您的base 64编码字符串有效



 类似资料:
  • 问题内容: 我想从服务器中获取JSON数据并在启动时对其进行操作。在Objective- C中,我使用此代码转换为,因为获取的数据有时可能包含null。 但是,在Swift中,可以将转换为吗?我想使用以下操作(代码是Objective-C的): 在上面的代码中,当获取的数据的键为时,则对象的属性设置为。 我使用Xcode 6 Beta 6。 问题答案: 这可能是您要寻找的:

  • 问题内容: 我正在尝试用快速的语言编写BMI程序。我有一个问题:如何将字符串转换为Double? 在Objective-C中,我可以这样: 但是如何用Swift语言实现呢? 问题答案: Swift 4.2+字符串加倍 您应该使用新的类型初始值设定项在String和数字类型(Double,Float,Int)之间进行转换。它会返回一个可选类型(Double?),该类型将具有正确的值;如果String

  • 问题内容: 我在这里经历了十分钟的挣扎和失败,我屈服了。我需要在Swift中将Int转换为Character并无法解决。 题 如何在Swift中将( 整数 )( 铸造 )转换为( 字符 )? 说明性问题/任务挑战 生成一个for循环,该循环打印字母“ A”至“ Z”,例如: 问题答案: 您不能将整数直接转换为实例,但是可以将整数从转换为并再次返回:

  • 标题说明了一切: null 编辑:工作示例要简单得多(多亏了@T.S.): 谢谢!

  • 问题内容: 我正在尝试找出如何在Swift中将转换为。 我想出一种解决方法,但是我很想弄清楚如何在Swift中做到这一点。 问题答案: 转换为: 而另一种方式-转换为: 或者,如果您使用的是Swift 2或3:

  • 问题内容: 我正在尝试转换从UITextField中获取的数字(我认为这些数字实际上是字符串),并将其转换为Float,因此我可以将它们相乘。 我有两个声明如下: 当用户按下UIButton时,我想计算用户赚取的工资,但是我不能,因为我需要先将其转换为浮动工资,然后才能使用它们。 我知道如何通过执行以下操作将它们转换为整数: 但是,我不知道如何将它们转换为浮点数。 问题答案: 迅捷2.0+ 现在,