Routines manipulant les caractères étendus

De RAD Studio
Aller à : navigation, rechercher

Remonter à Utilisation des chaînes


Les chaînes étendues contiennent deux octets par élément et sont utilisées dans diverses situations. UnicodeString est le type chaîne par défaut dans RAD Studio.

Vous pouvez également choisir d'utiliser des chaînes étendues car elles simplifient certains problèmes de gestion de chaînes dans les applications avec plusieurs paramètres régionaux cibles. L'utilisation d'un schéma d'encodage avec des caractères étendus présente l'avantage que vous pouvez réaliser sur les chaînes des hypothèses qui ne sont pas valables avec les systèmes qui utilisent les jeux de caractères multioctet (MBCS), qui sont des chaînes à octet unique. Pour les chaînes étendues, il existe une relation directe entre le nombre d'octets de la chaîne et son nombre d'éléments. Dans une chaîne MBCS, vous devez être concernés par le coupage des caractères en deux ou la confusion de la seconde partie d'un caractère avec le début d'un autre caractère. Il existe un problème similaire pour une chaîne étendue. Bien que les éléments font tous deux octets, les caractères n'appartenant pas au BMP (Basic Multilingual Plane) nécessitent deux éléments.

Deux types représentent les chaînes étendues : UnicodeString et WideString.

  • Le format WideString est essentiellement le même qu'un BSTR Windows. WideString est approprié dans les applications COM.
  • WideString n'utilise pas le comptage de références, ainsi UnicodeString est plus flexible et efficace dans d'autres types d'applications. En outre, plus de fonctions utilitaires sont disponibles pour UnicodeString que WideString, ainsi <span UnicodeString est généralement préféré.

Cette rubrique traite de WideString, pas de UnicodeString. La VCL utilise désormais le type UnicodeString ; elle ne représente plus les valeurs de chaînes sous forme de chaînes sur un seul octet ou MBCS.

Les fonctions suivantes effectuent des conversions entre les chaînes de caractères mono-octet standards (ou les chaînes MBCS) et les chaînes Unicode :

De plus, les fonctions suivantes effectuent des conversions entre WideStrings et d'autres représentations :

Les routines suivantes fonctionnent directement avec des WideStrings :

Enfin, certaines routines incluent des surcharges pour travailler avec des chaînes étendues :

Voir aussi