Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara menukar antara tatasusunan byte dan rentetan heksadesimal di C#?

Bagaimana cara menukar antara tatasusunan byte dan rentetan heksadesimal di C#?

Patricia Arquette
Patricia Arquetteasal
2025-02-03 08:13:09853semak imbas

How to Convert Between Byte Arrays and Hexadecimal Strings in C#?

C# Medium -byte Array Array dan Hexadecimal Strings diubah

Dalam pengaturcaraan, penukaran antara array byte dan rentetan heksadesimal adalah tugas yang sama. Artikel ini akan memperkenalkan bagaimana untuk mencapai penukaran ini dalam C#: ditukar dari array byte ke rentetan hexadecimal

dari .net 5, anda boleh menggunakan kaedah terbina

untuk menyelesaikan tugas ini:

yang ditukar dari rentetan heksadesimal ke array byte

Convert.ToHexString

untuk operasi terbalik, sila gunakan
<code class="language-csharp">string hexString = Convert.ToHexString(byteArray);</code>
:

kaedah alternatif versi lama. NET Versi

Convert.FromHexString Jika anda menggunakan versi lama .NET, anda boleh menggunakan kaedah berikut:

<code class="language-csharp">byte[] byteArray = Convert.FromHexString(hexString);</code>

atau: penukaran terbalik

Untuk menukar array tote penukaran rentetan heksadesimal, sila gunakan kaedah ini:
<code class="language-csharp">public static string ByteArrayToString(byte[] ba)
{
  StringBuilder hex = new StringBuilder(ba.Length * 2);
  foreach (byte b in ba)
    hex.AppendFormat("{0:x2}", b);
  return hex.ToString();
}</code>

mengoptimumkan
<code class="language-csharp">public static string ByteArrayToString(byte[] ba)
{
  return BitConverter.ToString(ba).Replace("-", "");
}</code>

Untuk meningkatkan prestasi, anda boleh mempertimbangkan menggunakan alternatif untuk mengelakkan penukaran berasaskan rentetan. Walau bagaimanapun, untuk kebanyakan senario, kaedah yang diperkenalkan di sini sepatutnya mencukupi.

Atas ialah kandungan terperinci Bagaimana cara menukar antara tatasusunan byte dan rentetan heksadesimal di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn