C# byte数组与16进制间的相互转换

时间:2019-08-28
本文章向大家介绍C# byte数组与16进制间的相互转换,主要包括C# byte数组与16进制间的相互转换使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.byte数组转16进制字符串

/// <summary>
/// 将一个byte数组转换成16进制字符串
/// </summary>
/// <param name="data">byte数组</param>
/// <returns>格式化的16进制字符串</returns>
public static string ByteArrayToHexString(byte[] data)
{
    StringBuilder sb = new StringBuilder(data.Length * 3);
    foreach (byte b in data)
    {
        sb.Append(Convert.ToString(b, 16).PadLeft(2, '0'));
    }
    return sb.ToString().ToUpper();
}  

2.16进制字符串转byte数组

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

写在最后

  哪位大佬如若发现文章存在纰漏之处或需要补充更多内容,欢迎留言!!!

 相关推荐:

原文地址:https://www.cnblogs.com/Marydon20170307/p/11423230.html