[Ios] Swift 3 - 將之前保存的音頻文件加載為base64字符串


Answers

問題是你正在使用錯誤的方法。 音頻數據不是字符串,而是字節(UInt8數組)的集合。 要讀取音頻數據,您需要使用數據初始值設定項Data(contentsOf: audioURL)並使用數據實例方法base64EncodedString將此數據轉換為base64字符串。

if let base64String = try? Data(contentsOf: audioURL).base64EncodedString() {
    print(base64String)
}
Question

我記錄並保存一個音頻文件,這個工程和預期的應用程序中播放。 然而,在錄製之後,我嘗試加載它,以便將音頻傳遞到JSON對象,但無法打開它。

我得到以下錯誤:

The file “audio.m4a” couldn’t be opened because the text encoding of its contents can’t be determined.

這是我正在做的呼叫:

do {
     let audioData =  try NSData(contentsOfFile: String(contentsOf: audioURL!))
} catch {
     print error
}

任何想法如何我可以從base64編碼的文件加載音頻數據?

謝謝