Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
As operações de cadeia de caracteres sensíveis à cultura são vantajosas se você estiver criando aplicativos projetados para exibir resultados aos usuários por cultura. Por padrão, os métodos sensíveis à cultura obtêm a cultura a ser usada da CurrentCulture propriedade para o thread atual.
Às vezes, as operações com sequências de caracteres sensíveis à cultura não são o comportamento desejado. O uso de operações sensíveis à cultura quando os resultados devem ser independentes da cultura pode fazer com que o código do aplicativo falhe em culturas com mapeamentos de casos personalizados e regras de classificação. Para obter um exemplo, consulte a seção Comparações de cadeia de caracteres que usam a cultura atual em Práticas recomendadas para uso de cadeias de caracteres.
Se as operações de cadeia de caracteres devem ser sensíveis ou insensíveis à cultura depende de como a sua aplicação utiliza os resultados. As operações de cadeia de caracteres que exibem resultados para o usuário normalmente devem ser sensíveis à cultura. Por exemplo, se um aplicativo exibir uma lista classificada de cadeias de caracteres localizadas em uma caixa de listagem, o aplicativo deverá executar uma classificação sensível à cultura.
Os resultados de operações de string usadas internamente devem normalmente ser insensíveis à cultura. Em geral, se o aplicativo estiver trabalhando com nomes de arquivo, formatos de persistência ou informações simbólicas que não são exibidas para o usuário, os resultados das operações de cadeia de caracteres não devem variar de acordo com a cultura. Por exemplo, se um aplicativo comparar uma cadeia de caracteres para determinar se ela é uma marca XML reconhecida, a comparação não deverá ser sensível à cultura. Além disso, se uma decisão de segurança for baseada no resultado de uma comparação de cadeia de caracteres ou operação de alteração de caso, a operação deve ser insensível à cultura para garantir que o resultado não seja afetado pelo valor de CurrentCulture.
A maioria dos métodos .NET que por padrão executam operações de strings sensíveis à cultura também oferecem uma sobrecarga que permite garantir resultados insensíveis à cultura. Essas sobrecargas que usam um CultureInfo argumento permitem eliminar variações culturais em mapeamentos de casos e regras de classificação. Para operações de cadeia de caracteres que não diferenciam cultura, especifique a cultura como CultureInfo.InvariantCulture.
Nesta secção
Os artigos desta seção demonstram como executar operações de strings insensíveis à cultura usando métodos .NET que são sensíveis à cultura por padrão.
Executar comparações de texto insensíveis à cultura
Descreve como usar os métodos String.Compare e String.CompareTo para executar comparações de cadeia de caracteres insensíveis à cultura.
Realizando alterações de maiúsculas e minúsculas sem sensibilidade cultural
Descreve como usar os métodos String.ToUpper, String.ToLower, Char.ToUpper e Char.ToLower para executar alterações de maiúsculas e minúsculas que não diferenciam cultura.
Executando operações de cadeia de caracteres insensíveis à cultura em coleções
Descreve como usar a classe CaseInsensitiveComparer, CaseInsensitiveHashCodeProvider, SortedList e ArrayList.Sort para executar operações que não diferenciam a cultura em coleções.
Executando operações de strings sem distinção cultural em matrizes
Descreve como usar os métodos Array.Sort e Array.BinarySearch para executar operações insensíveis à cultura em matrizes.