gpt4 book ai didi

swift - 在 [UInt8] 数组或数据中包含 UTF8 字 rune 字

转载 作者:行者123 更新时间:2023-11-28 09:33:09 27 4
gpt4 key购买 nike

我想要类似的东西:

let a = ["v".utf8[0], 1, 2]

我想到的最接近的是:

let a = [0x76, 1, 2]

"v".data(using: String.Encoding.utf8)! + [1, 2]

注意:[UInt8]Data 都是可接受的类型。

最佳答案

StringUTF8View 没有被 Int 索引,而是它自己的 String.UTF8View.Index类型,因此为了在数组文字中包含给定字符串的 UTF-8 序列的第一个字节,您可以改用其 first 属性:

let a = ["v".utf8.first!, 1, 2] // [118, 1, 2]

如果序列中有多个字节,您可以简单地使用 + 运算符将 UTF-8 字节与数组文字连接起来:

let a = "😀".utf8 + [1, 2] // [240, 159, 152, 128, 1, 2]

另请注意,您将 [UInt8] 连接到 Data 的示例可以稍微缩短为:

let a = "v".data(using: .utf8)! + [1, 2] // Data with bytes [0x76, 0x1, 0x2]

关于swift - 在 [UInt8] 数组或数据中包含 UTF8 字 rune 字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41922716/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com