在swift中将String转换为二进制?

AMA*_*N77 3 string binary ascii char swift3

有没有办法在Swift中将字符串转换为二进制?

在SO上找到此链接但它只处理转换小数.我正在尝试转换特殊字符和字母.

尝试构建一个已知的ASCII字符数组并比较它们(为字母工作)但遇到了比较特殊字符的问题.

感谢您的回复.

use*_*434 7

使用 func data(using encoding: String.Encoding, allowLossyConversion: Bool = default) -> Data?

例:

斯威夫特3

let string = "The string"
let binaryData = Data(string.utf8)
Run Code Online (Sandbox Code Playgroud)

编辑:或者等等,你需要二进制表示你的数据或字符串0/1?

编辑:对于0/1的字符串使用类似的东西:

let string = "The string"
let binaryData: Data? = string.data(using: .utf8, allowLossyConversion: false)
Run Code Online (Sandbox Code Playgroud)

编辑:斯威夫特2

let stringOf01 = binaryData?.reduce("") { (acc, byte) -> String in
    acc + String(byte, radix: 2)
}
Run Code Online (Sandbox Code Playgroud)