C# バイト配列から 16 進文字列への変換テクニック
この記事では、バイト配列を C# で同等の 16 進数の文字列に変換する効率的な方法について説明します。
方法 1: BitConverter を利用する
BitConverter
クラスは、単純なアプローチを提供します。 次の例はその使用法を示しています:
<code class="language-csharp">byte[] byteArray = { 1, 2, 4, 8, 16, 32 }; string hexString = BitConverter.ToString(byteArray); Console.WriteLine(hexString); // Output: 01-02-04-08-10-20</code>
16 進値をハイフンで区切っていることに注意してください。これらを削除するには、Replace()
:
<code class="language-csharp">hexString = BitConverter.ToString(byteArray).Replace("-", ""); Console.WriteLine(hexString); // Output: 010204081020</code>
方法 2: Base64 エンコーディングを利用する
別の方法は、Base64 エンコードを使用することです。 Base64 はバイナリ データを ASCII 文字列に変換します。 この方法では、多くの場合、よりコンパクトな結果が得られます。
<code class="language-csharp">string base64String = Convert.ToBase64String(byteArray); Console.WriteLine(base64String); // Output: AQIECBAg</code>
ニーズに最も適した方法を選択してください。 Base64 は一般にスペース効率が高く、BitConverter
は直接 16 進表現を提供します。
以上がC# でバイト配列を 16 進文字列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。