Partager via


Prise en charge Unicode pour les paires de substitution et les séquences de caractères d'association

La norme Unicode définit une paire de substitution comme représentation de caractère codée pour un seul caractère abstrait, consistant en une suite de deux unités de code. La première valeur de la paire de substitution est le substitut étendu, et contient une valeur de code 16 bits comprise dans l'intervalle de U+D800 à U+DBFF. La seconde valeur de la paire est le substitut faible, dont les valeurs de code sont comprises entre U+DC00 et U+DFFF.

La norme Unicode définit une séquence de caractères d'association comme combinaison d'un caractère de base et d'un ou plusieurs caractères d'association. Une paire de substitution peut représenter un caractère de base ou un caractère d'association. Pour plus d'informations sur les paires de substitution et les séquences de caractères d'association, consultez la norme Unicode à l'adresse http://www.unicode.org.

Le point clé à retenir est que les paires de substitution représentent des caractères 32 bits, et que vous ne pouvez pas supposer qu'une valeur de codage Unicode 16 bits correspond exactement à un caractère. En utilisant les paires de substitution, un système de codage Unicode 16 bits peut définir un million de points de code supplémentaires auxquels des caractères seront assignés par la norme Unicode.

Le .NET Framework prend en charge les éléments de texte. Un élément de texte est une unité de texte qui est affichée sous la forme d'un seul caractère, appelé graphème. Un élément de texte peut être un caractère de base, une paire de substitution ou une séquence de caractères d'association. La classe StringInfo fournit des méthodes qui vous permettent de décomposer une chaîne en ses éléments de texte et d'itérer sur ces éléments de texte. Par exemple, la méthode StringInfo.GetNextTextElement vous permet d'extraire une paire de substitution sous la forme d'un élément de texte. Pour obtenir un exemple d'utilisation de la classe StringInfo, consultez Indexation de chaîne.

Voir aussi

Référence

System.Text Namespace

Concepts

Unicode dans le .NET Framework
Indexation de chaîne

Autres ressources

Codage et localisation