Swift 3方法从String创建utf8编码数据

Tra*_*ggs 26 string utf-8 swift3

我知道有很多关于NSData东西的Swift3问题.我很好奇如何在Swift3 String到utf8编码(有或没有空终止)之间进入Swift3 Data对象.

到目前为止我提出的最好的是:

let input = "Hello World"
let terminatedData = Data(bytes: Array(input.nulTerminatedUTF8))
let unterminatedData = Data(bytes: Array(input.utf8))
Run Code Online (Sandbox Code Playgroud)

必须做中间Array()结构似乎是错误的.

Cod*_*ent 61

这很简单:

let input = "Hello World"
let data = input.data(using: .utf8)!
Run Code Online (Sandbox Code Playgroud)

如果要以datanull 结束,只需append为0即可.或者你可以打电话cString(using:)

let cString = input.cString(using: .utf8)! // null-terminated
Run Code Online (Sandbox Code Playgroud)