You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kotlin中实现十六进制值数组字符串与ByteArray互转

解决方案

步骤1:将十六进制数组字符串转换为ByteArray

先从输入字符串中提取单个十六进制数值,再转换为Byte类型组成ByteArray:

val intArr = "[61, 62, 63]"
// 去掉首尾方括号,分割出独立的十六进制字符串
val hexValues = intArr.removeSurrounding("[", "]").split(", ").filterNot { it.isBlank() }
// 将每个十六进制字符串转成Byte,生成ByteArray
val byteArray = hexValues.map { it.toInt(16).toByte() }.toByteArray()

步骤2:将ByteArray转换回原始数组字符串

把ByteArray里的每个元素转回两位小写十六进制字符串,再拼接成原始的数组格式:

// 将每个Byte格式化为两位小写十六进制字符串
val hexStringList = byteArray.map { "%02x".format(it) }
// 拼接成和原字符串一致的数组格式
val restoredString = "[${hexStringList.joinToString(", ")}]"
// 此时restoredString的值即为"[61, 62, 63]"

补充说明

  • 用removeSurrounding直接去除首尾方括号,比手动截取索引更简洁;
  • 解析十六进制时指定基数16,确保字符串按十六进制规则转换;
  • 格式化时用%02x保证单个十六进制数字(如0x09)会显示为两位的09,和原格式统一。

内容的提问来源于stack exchange,提问作者Kim Mỹ

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 05:05:22