首页 > 后端开发 > C++ > 如何在 C# 中将 byte[] 数组转换为十六进制字符串?

如何在 C# 中将 byte[] 数组转换为十六进制字符串?

DDD
发布: 2025-01-20 11:21:09
原创
445 人浏览过

How to Convert a byte[] Array to a Hex String in C#?

将 C# byte[] 数组转换为十六进制字符串

在 C# 中直接将 byte[] 数组转换为字符串通常会产生不良结果,通常显示“System.Byte[]”。 本指南展示了如何有效地将字节数组转换为其十六进制 (hex) 字符串表示形式,解决常见问题。

方法一:使用BitConverter

BitConverter 类提供了一个简单的解决方案:

<code class="language-csharp">byte[] data = { 1, 2, 4, 8, 16, 32 };
string hex = BitConverter.ToString(data); // Result: 01-02-04-08-10-20
string hexNoDashes = BitConverter.ToString(data).Replace("-", ""); // Result: 010204081020</code>
登录后复制

此方法生成一个十六进制字符串,带或不带连字符分隔字节值。

方法2:使用Base64编码(紧凑表示)

为了更紧凑的十六进制表示,请考虑 Base64 编码:

<code class="language-csharp">string base64 = Convert.ToBase64String(data); // Result (will vary): AQIECBAg</code>
登录后复制

Base64 编码提供了更短的字符串表示形式,尽管它不是严格的十六进制格式。 如果空间效率至关重要,请选择此方法。 请注意,生成的字符串不能直接解释为十六进制。

以上是如何在 C# 中将 byte[] 数组转换为十六进制字符串?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板