Heim >Backend-Entwicklung >C++ >Wie kann man Byte -Arrays und Hex -Saiten in .NET effizient konvertieren?
Byte -Array- und Hex -String -Conversions in .NET
Mastering -Array- und HEX -String.NET -Entwickler begegnen häufig auf die Notwendigkeit, zwischen Byte -Arrays und hexadezimalen Saiten umzuwandeln. Dieser Leitfaden untersucht effiziente Methoden für diese Conversions.
Byte -Arrays in Hex -Zeichenfolgen
konvertieren von .NET 5 liefert Convert.ToHexString
die einfachste und effizienteste Lösung:
<code class="language-csharp">string hexString = Convert.ToHexString(byteArray);</code>
Für ältere .NET -Frameworks betrachten Sie diese Alternativen:
<code class="language-csharp">hexString = ByteArrayToHex(byteArray);</code>
wobei ByteArrayToHex
definiert ist als:
<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>
Eine andere praktikable Option, obwohl möglicherweise weniger effizient:
<code class="language-csharp">hexString = BitConverter.ToString(byteArray).Replace("-", "");</code>
In Sechskantaiten in Byte -Arrays
konvertierenDie umgekehrte Umwandlung ist gleich wichtig:
<code class="language-csharp">byte[] byteArray = HexToStringArray(hexString);</code>
Die Funktion HexToStringArray
kann als:
<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>
Leistungsoptimierung
für eine optimale Leistung, insbesondere bei großen Datensätzen, vermeiden Sie Convert.ToByte
mit Substring
. Direkte Iteration und Bitmanipulation bieten erhebliche Leistungsverbesserungen.
Das obige ist der detaillierte Inhalt vonWie kann man Byte -Arrays und Hex -Saiten in .NET effizient konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!