Maison >développement back-end >C++ >Comment convertir un tableau d'octets[] en chaîne hexadécimale en C# ?
Conversion de tableaux d'octets C#[] en chaînes hexadécimales
La conversion directe d'un tableau byte[]
en chaîne en C# donne souvent des résultats indésirables, affichant généralement "System.Byte[]". Ce guide montre comment convertir efficacement un tableau d'octets en sa représentation sous forme de chaîne hexadécimale (hex), en résolvant les problèmes courants.
Méthode 1 : Utiliser BitConverter
La classe BitConverter
propose une solution simple :
<code class="language-csharp">byte[] data = { 1, 2, 4, 8, 16, 32 }; string hex = BitConverter.ToString(data); // Result: 01-02-04-08-10-20 string hexNoDashes = BitConverter.ToString(data).Replace("-", ""); // Result: 010204081020</code>
Cette méthode produit une chaîne hexadécimale avec ou sans tirets séparant les valeurs d'octets.
Méthode 2 : Utilisation du codage Base64 (représentation compacte)
Pour une représentation hexadécimale plus compacte, pensez à l'encodage Base64 :
<code class="language-csharp">string base64 = Convert.ToBase64String(data); // Result (will vary): AQIECBAg</code>
L'encodage Base64 fournit une représentation sous forme de chaîne plus courte, bien qu'il ne s'agisse pas strictement d'un format hexadécimal. Choisissez cette méthode si l’efficacité de l’espace est primordiale. Notez que la chaîne résultante ne sera pas directement interprétable en hexadécimal.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!