首頁 > 後端開發 > C++ > 如何在 C# 中將 byte[] 陣列轉換為十六進位字串?

如何在 C# 中將 byte[] 陣列轉換為十六進位字串?

DDD
發布: 2025-01-20 11:21:09
原創
489 人瀏覽過

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
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板