Super technique, trouvée par un client, pour supprimer les diacritiques dans les chaines de caracteres.
(Maintenant ce sont les clients qui m'apprennent des trucs !)
Il suffit de s'appuyer sur la page de code 1251 dans lequel les caracteres diacritiques sont codés sur 2 octets, avec un octet pour le caractere de base et un octet pour la variante ( e -> e, é, e, e, ë ...)
En repassant en ascii, on ne garde que le caractere de base :
public string RemoveDiacritics(string text)
{
return System.Text.Encoding.ASCII.GetString(System.Text.Encoding.GetEncoding(1251).GetBytes(text));
}
Mots clés Technorati :
CodePage,
Accents,
Encoding