我知道有关NSData的一些关于Swift3的问题。我很好奇如何在Swift3字符串之间转换为UTF8编码(带或不带零终止)到Swift3 Data对象。
到目前为止,我所想出的最好的是:
let input = "Hello World" let terminatedData = Data(bytes: Array(input.nulTerminatedUTF8)) let unterminatedData = Data(bytes: Array(input.utf8))
不必做中间的Array()构造似乎是错误的。
这很简单:
let input = "Hello World" let data = input.data(using: .utf8)!
如果要使用null终止数据,只需在其中附加一个0。或者你可以叫cString(使用:)
let cString = input.cString(using: .utf8)! // null-terminated
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。