Rumah > pembangunan bahagian belakang > C++ > Bagaimana cara menukar susunan byte dan rentetan hex dengan cekap?

Bagaimana cara menukar susunan byte dan rentetan hex dengan cekap?

Patricia Arquette
Lepaskan: 2025-02-03 08:23:09
asal
363 orang telah melayarinya

How to Efficiently Convert Byte Arrays and Hex Strings in .NET?

menguasai array byte dan penukaran rentetan hex dalam .net

. NET pemaju sering menemui keperluan untuk menukar antara tatasusunan byte dan rentetan heksadesimal. Panduan ini meneroka kaedah yang cekap untuk penukaran ini.

Menukar array byte ke Hex Strings

dari .net 5 dan seterusnya,

menawarkan penyelesaian yang paling mudah dan paling berkesan:

Convert.ToHexString

untuk rangka kerja yang lebih tua, pertimbangkan alternatif ini:
string hexString = Convert.ToHexString(byteArray);
Salin selepas log masuk

di mana
hexString = ByteArrayToHex(byteArray);
Salin selepas log masuk
ditakrifkan sebagai:

ByteArrayToHex

pilihan lain yang berdaya maju, walaupun berpotensi kurang efisien:
public static string ByteArrayToHex(byte[] ba)
{
    StringBuilder hex = new StringBuilder(ba.Length * 2);
    foreach (byte b in ba)
        hex.AppendFormat("{0:x2}", b);
    return hex.ToString();
}
Salin selepas log masuk

hexString = BitConverter.ToString(byteArray).Replace("-", "");
Salin selepas log masuk
Menukar rentetan hex ke array byte

Penukaran terbalik sama pentingnya:

fungsi
byte[] byteArray = HexToStringArray(hexString);
Salin selepas log masuk
boleh dilaksanakan sebagai:

HexToStringArray

public static byte[] HexToStringArray(string hex)
{
    int numChars = hex.Length;
    byte[] bytes = new byte[numChars / 2];
    for (int i = 0; i < numChars; i += 2)
        bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16);
    return bytes;
}
Salin selepas log masuk
Pengoptimuman prestasi

Untuk prestasi yang optimum, terutamanya dengan dataset yang besar, elakkan menggunakan

dengan

. Lelaran langsung dan manipulasi sedikit memberikan peningkatan prestasi yang besar. Convert.ToByte

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

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