Rumah > pembangunan bahagian belakang > C++ > Bagaimana dengan cekap menukar rentetan hex ke array byte di C#?

Bagaimana dengan cekap menukar rentetan hex ke array byte di C#?

Barbara Streisand
Lepaskan: 2025-02-01 12:46:09
asal
374 orang telah melayarinya

How to Efficiently Convert a Hex String to a Byte Array in C#?

c#enam belas -in -made String ke penukaran array byte

Dalam C#, menukar rentetan heksadesimal ke dalam array byte boleh dilaksanakan untuk mencapai gabungan LINQ (pertanyaan integrasi bahasa) dan operasi rentetan.

Berikut adalah kod contoh:

Kaedah ini menerima rentetan heksadesimal sebagai input dan melaksanakan langkah -langkah berikut:
<code class="language-csharp">public static byte[] HexStringToByteArray(string hex) {
    return Enumerable.Range(0, hex.Length)
                     .Where(x => x % 2 == 0)
                     .Select(x => Convert.ToByte(hex.Substring(x, 2), 16))
                     .ToArray();
}</code>
Salin selepas log masuk

ia menggunakan untuk menghasilkan urutan indeks aksara dalam rentetan.
  1. ia menggunakan untuk menyaring urutan, yang hanya mengandungi aksara yang mengindeks indeks untuk memastikan bait itu dipasangkan. Enumerable.Range(0, hex.Length)
  2. Ia menggunakan untuk memilih setiap aksara untuk sub -string, dan gunakan
  3. untuk menukarnya ke dalam bait. Parameter 16 Tentukan penukaran dari pangkalan nombor heksadesimal. Where(x => x % 2 == 0)
  4. Gunakan untuk menukar urutan byte yang dihasilkan ke array, dengan itu menghasilkan array byte yang diperlukan.
  5. hex.Substring(x, 2) Convert.ToByte(hex.Substring(x, 2), 16) Kaedah ini menggunakan fungsi linq yang kuat, dan menunjukkan kaedah untuk analisis yang berkesan dalam C#dan menukar rentetan heksadesimal ke dalam array byte.

Atas ialah kandungan terperinci Bagaimana dengan cekap menukar rentetan hex ke array byte di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan