字符串格式的16进制数如何存入byte数组中

渺渺兮雅 2015-10-09 07:40:12
新手刚接触C#不久,想问下如果一个字符串里如果是16进制的数据“F3AE56FF”,如何存入byte[]数组bytes中,比如说bytes[0]=F3,bytes[1]=AE,bytes[2]=56,bytes[3]=FF这样……
...全文
252 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
GengKE_Tom 2016-06-12
  • 打赏
  • 举报
回复
在java中怎么实现?
  • 打赏
  • 举报
回复
string text = @"F3AE56FF";
if (text.Length % 2 != 0)
{
    text = "0" + text;
}
byte[] bytes = new byte[text.Length / 2];
for (var i = 0; i < text.Length; i += 2)
{
    bytes[i / 2] = Convert.ToByte(text.Substring(i, 2), 16);
}
Console.WriteLine(string.Join(",", bytes));
  • 打赏
  • 举报
回复
先在左侧填充0,以使字符串长度为偶数位,然后直接按两位长度截取,最后Convert

110,568

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧