Suporte a Unicode para pares substitutos e seqüências de caracteres de combinação
O padrão Unicode define um par substituto como uma representação de caracteres codificados para um único caractere abstrata que consiste em uma seqüência de duas unidades de código. O primeiro valor do par substituto é o substituto alto, um valor de código de 16 bits no intervalo de U + D800 a U + DBFF. O segundo valor do par é o substituto baixo, no intervalo de U + DC00 a U + DFFF.
O padrão Unicode define uma combinação seqüência como uma combinação de um caractere base e um ou mais caracteres de combinação de caracteres. Um par substituto pode representar um caractere base ou um caractere de combinação. Para obter mais informações sobre pares substitutos e combinar seqüências de caracteres, consulte o padrão Unicode na Unicode home page.
O ponto chave a ser lembrado é que os pares substitutos representam caracteres únicos de 32 bits. Você não pode presumir que um valor de codificação de Unicode de 16 bits mapeia para exatamente um caractere. Usando pares substitutos, um sistema codificado em Unicode de 16 bits pode endereçar mais de um milhão de pontos de código para os caracteres que serão atribuídos pelo padrão Unicode.
A.NET Framework oferece suporte a elementos de texto. Um elemento de texto é uma unidade de texto que é exibido como um único caractere, chamado de um grapheme. Um elemento de texto pode ser uma caracteres de combinação, um par substituto ou um caractere base seqüência. O StringInfo classe fornece métodos que permitem que o seu aplicativo para dividir uma cadeia de caracteres em seus elementos de texto e iterar por meio de elementos de texto. Para obter um exemplo do uso do StringInfo da classe, consulte A indexação de seqüência de caracteres.