gpt4 book ai didi

swift - Kotlin:将字符串转换为字节数组并用 0 填充

转载 作者:行者123 更新时间:2023-12-01 23:20:31 25 4
gpt4 key购买 nike

我正在尝试将一些 iOS 代码转换为 Kotlin。我相信 iOS 代码所做的是将一个字符串 (FrameNumber) 转换为 NSData 并用 0 将其填充为 16 个字节长。

//iOS

let frameNumber = "590636"

var frameData = frameNumber.data(using: .utf8)!
let a = Data(repeating: 0, count: 16 - frameData.count)
frameData.append(a)

我似乎找不到在 Kotlin 中执行此操作的方法

var frame = "590636"
var byteArray = frame.toByteArray()

// improve
byteArray.set(7 ,0)
byteArray.set(8 ,0)
byteArray.set(9 ,0)
byteArray.set(10 ,0)
byteArray.set(11 ,0)
byteArray.set(12 ,0)
byteArray.set(13 ,0)
byteArray.set(14 ,0)
byteArray.set(15 ,0)
byteArray.set(156,0)

Log.i("Code was", "${byteArray.toHexString()}")

最佳答案

您可以使用 copyOf(newSize)使用您期望的新尺寸:

val frame = "590636"
val byteArray = frame.toByteArray()
val paddedArray = byteArray.copyOf(newSize = 16)

如果源数组小于 16 字节,则新数组的末尾将用 0 填充。

关于swift - Kotlin:将字符串转换为字节数组并用 0 填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68164981/

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