Как правило, вы бы просто создать Data
/NSData
от базового 64 строки, а не массив байтов. Обратите внимание, однако, что стандарт Data(base64Encoded:)
не имеет «URL Safe», поэтому вы захотите заменить «-» на «+» и «_» на «/», прежде чем пытаться его преобразовать:
let b64 = "KJT-AAAhtAvQ"
.replacingOccurrences(of: "-", with: "+")
.replacingOccurrences(of: "_", with: "/")
let data = Data(base64Encoded: b64)!
print("\(data.count)")
Затем вы можете преобразовать это в массив байтов, но зачем вам это делать? Если вы покажете нам, с чем вы это используете, мы можем посоветовать дальше. Большинство функций Swift, которые ищут двоичные данные, обрабатывают объекты Data
, а не массивы байтов.
Вы видели это http://stackoverflow.com/questions/29365145/how-to-encode-string-to-base64-in-swift? – Dribbler
Обычно вам не нужны массивы байтов. Это то, что «Данные» * для * – Alexander