【发布时间】:2019-02-12 23:09:49
【问题描述】:
令人惊讶的是(对我而言),这段代码并没有达到我想要的效果:
fun ByteArray.toHexString() : String {
return this.joinToString("") { it.toString(16) }
}
原来Byte 是有符号的,因此您会得到单个字节的负十六进制表示,这会导致完全虚假的最终结果。
另外,Byte.toString 不会填充前导零,这是您想要的。
什么是最简单的(没有额外的库,最好没有扩展)resp。最有效的解决方法?
【问题讨论】:
-
...你能给我一个输入吗?
-
@Roland
0xFF.toByte().toString(16) -
@Roland 我的提示是在 SHA-256 哈希中看到
-。 -
尝试了从
0x00到0xFF的所有单字节字符串。此页面上的所有变体都会产生相同的结果。我在这里缺少什么? -
只是想知道:您如何获得
ByteArray?
标签: arrays string kotlin hex byte