Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara menukar susunan byte dan rentetan hex dengan cekap?
. 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
<code class="language-csharp">string hexString = Convert.ToHexString(byteArray);</code>
di mana
<code class="language-csharp">hexString = ByteArrayToHex(byteArray);</code>ditakrifkan sebagai:
ByteArrayToHex
<code class="language-csharp">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(); }</code>
<code class="language-csharp">hexString = BitConverter.ToString(byteArray).Replace("-", "");</code>Menukar rentetan hex ke array byte
Penukaran terbalik sama pentingnya:
fungsi
<code class="language-csharp">byte[] byteArray = HexToStringArray(hexString);</code>boleh dilaksanakan sebagai:
HexToStringArray
<code class="language-csharp">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; }</code>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!