Maison >développement back-end >C++ >Comment coder et décoder les caractères Unicode en C #?

Comment coder et décoder les caractères Unicode en C #?

DDD
DDDoriginal
2025-01-28 04:51:13526parcourir

How to Encode and Decode Unicode Characters in C#?

Le codage et le décodage du caractère Unicode dans le C #

Dans C #,

La classe est utilisée pour le codage et le décodage des caractères. Cependant, il a des limites lors du traitement du caractère Unicode en dehors de la plage ASCII. Afin de conserver les caractères non-ascii (tels que les lettres grecques pi (π)), nous devons utiliser des technologies spécifiques.

Encoding Encodage de caractères Unicode

Pour coder le caractère Unicode dans la chaîne ASCII de la justice, nous utilisons les méthodes suivantes:

Cette méthode remplace les caractères non -ascii à sa forme ASCII de transition correspondante, telle que "π" à "U03A0".

<code class="language-csharp">static string EncodeNonAsciiCharacters(string value) {
    StringBuilder sb = new StringBuilder();
    foreach (char c in value) {
        if (c > 127) {
            string encodedValue = "\u" + ((int)c).ToString("x4");
            sb.Append(encodedValue);
        } else {
            sb.Append(c);
        }
    }
    return sb.ToString();
}</code>
Transférer le décodage des caractères ASCII

Pour décoder la chaîne ASCII juste vers Unicode, nous utilisons des expressions régulières:

Cette expression régulière remplace tous les caractères Unicode re-rights (uxxxx) à son caractère Unicode correspondant, par exemple "u03a0" devient "π".

Exemple d'utilisation
<code class="language-csharp">static string DecodeEncodedNonAsciiCharacters(string value) {
    return Regex.Replace(value,
        @"\u(?<value>[a-zA-Z0-9]{4})",
        m => {
            return ((char)int.Parse(m.Groups["Value"].Value, NumberStyles.HexNumber)).ToString();
        });
}</code>

L'exemple suivant illustre le processus de code et de décodage:

Cet exemple conserve le caractère non -ascii PI pendant l'ensemble du code et du processus de décodage.

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