Maison >développement back-end >C++ >Comment puis-je convertir efficacement les chaînes hexadécimales en tableaux d'octets en C #?

Comment puis-je convertir efficacement les chaînes hexadécimales en tableaux d'octets en C #?

Susan Sarandon
Susan Sarandonoriginal
2025-02-01 13:01:091080parcourir

How Can I Efficiently Convert Hex Strings to Byte Arrays in C#?

C # Conversion de la chaîne hexagonale vers les octets: une approche concise

La conversion directe des chaînes hexadécimales en tableaux d'octets n'est pas soutenue nativement en C #. Cependant, une solution propre et efficace tirant parti de Linq est facilement disponible.

Une solution LINQ rationalisée

Cette élégante méthode basée sur Linq gère élégamment la conversion:

<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>

Ce code itère à travers la chaîne hexagonale, en sélectionnant des paires de caractères (représentant des chiffres hexadécimaux). Convert.ToByte transforme efficacement chaque paire en équivalent d'octets, et le résultat est compilé en un réseau d'octets. L'utilisation de Linq rend le code concis et lisible.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn