#HexFormat
#整数与 Hex String 互转
val byte:Byte = 0x20
val hexString = byte.toHexString()
// 20
println(hexString)
// 32
println("20".hexToByte())toHexString() 会根据整数的位数自动补 0 :
val short:Short = 0x20
// 0020
println(short.toHexString())#修改 HexString 的格式
val short:Short = 0x20
// 修改 HexString 的格式
val format = HexFormat {
// 指定前缀
number.prefix = "%"
// 去掉前面的0
number.removeLeadingZeros = true
}
// %20
println(short.toHexString(format))
// 32
println("%20".hexToByte(format))#ByteArray 转 IPv6 String
val array = Random.Default.nextBytes(16)
val ipv6Format = HexFormat {
upperCase = true
bytes.bytesPerGroup = 2
bytes.groupSeparator =":"
}
// 3CF8:6F77:3D36:A5D4:B6BF:4D01:5439:FC84
println(array.toHexString(ipv6Format))
