如何快速将base64转换为NSDATA [英] How to convert base64 into NSDATA in swift

查看:336
本文介绍了如何快速将base64转换为NSDATA的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在研究一个iOS项目.它将音频以base64字符串的形式存储在Web服务器上.当我请求服务器获取所有音频的base64字符串并尝试在NSData中进行转换时,我正在获取nil.

I am working on an iOS project. It stores audio on web server in the form of base64 string. When I request server to get base64 Strings for all audios and tried convert it in NSData I am getting nil.

do
{
   var audioData: NSData! = NSData(base64EncodedString: audioBase64String, options: NSDataBase64DecodingOptions(rawValue:0))
   if audioData != nil
   {
      let sound = try AVAudioPlayer(data: audioData)
      sound.play()
   }
   else
   {
        print("Data Not Exist")
   }
}
catch
{
}

在Android上,相同的base64字符串被转换为字节数组并正在播放,但是在iOS audioBase64String中,返回nil表示NSData.

On Android same base64 string is converted into byte array and is playing, but in iOS audioBase64String return nil for NSData.

推荐答案

这有效:

快速3和4:

var audioData = Data(base64Encoded: recording_base64, options: .ignoreUnknownCharacters)

迅速2:

var audioData = NSData(base64EncodedString: recording_base64, options: NSDataBase64DecodingOptions.IgnoreUnknownCharacters)

这篇关于如何快速将base64转换为NSDATA的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆