gk-auto 发表于 2021-8-18 21:07:37

C# 16进制字符串转换byte[]数组

C# 16进制字符串转换byte[]数组

static void Main(string[] args)
{
    // 16进制字符串, 0x000000000002654D
    string str = "000000000002654D";// 或者 02654D

    // 16进制字符串 -> bytes
    byte[] a = BytesToHexString(str);

    // bytes -> 16进制字符串
    string hex = BytesToHexString(a);

    // 转换数值
    long b = Convert.ToInt64(hex, 16);

    Console.Read();
}

/// <summary>
/// 16进制字符串转byte数组
/// </summary>
/// <param name="hexString">16进制字符</param>
/// <returns></returns>
public static byte[] BytesToHexString(string hexString)
{
    // 将16进制秘钥转成字节数组
    byte[] bytes = new byte;
    for (var x = 0; x < bytes.Length; x++)
    {
      var i = Convert.ToInt32(hexString.Substring(x * 2, 2), 16);
      bytes = (byte)i;
    }
    return bytes;
}

/// <summary>
/// byte数组转16进制字符串
/// </summary>
/// <param name="bytes">byte数组</param>
/// <returns></returns>
public static string BytesToHexString(byte[] bytes)
{
    StringBuilder sb = new StringBuilder(bytes.Length * 3);
    foreach (byte b in bytes)
    {
      sb.Append(Convert.ToString(b, 16).PadLeft(2, '0'));
    }
    return sb.ToString().ToUpper();
}

tody0427 发表于 2021-8-18 21:07:38

无私奉献,好工控人,32个赞送给你!!

wangyipibb 发表于 2021-8-20 00:12:06

看了楼主的帖子,不由得精神一振,豁然开朗,牛掰

vov_B8c4M 发表于 2025-11-12 11:55:18

救命!这回复笑到我捶桌,必须置顶~

涳白°cium 发表于 2025-11-12 12:16:41

救命!这波发言太秀了,直接原地封神~
疯狂认同!楼主说出了我不敢说的话

Lgs7714 发表于 2025-11-12 12:34:28

同款经历!我当初也这么过来的😂

wosdao 发表于 2025-11-12 12:37:33

水贴也要有仪式感,我先来打卡~

liaojianbo 发表于 2025-11-12 12:43:22

来凑个热闹,增加点人气~

nanjide029 发表于 2025-11-12 13:34:01

画面感太强了,仿佛身临其境!

wx_Z11HTazs 发表于 2025-11-14 13:05:31

楼主太会说了,字字句句都在理
页: [1] 2
查看完整版本: C# 16进制字符串转换byte[]数组