Bonjour à tous,

Voila j'ai un petit problème que je n'arrive pas à résoudre...

j'ai un string de ce genre :

"je%20m%7Gappelle%20blabla"

que je récupère d'un web service.

Mais j'aimerai l'enregistrer de cette manière : "je m'appelle blabla"

J'ai fait une fonction de conversion utf-8 => ISO-8859-1 qui ressemble à ça :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
if (!string.IsNullOrEmpty(myString))
{
        Encoding iso = Encoding.GetEncoding("ISO-8859-1");
        Encoding utf8 = Encoding.UTF8;
        byte[] utfBytes = utf8.GetBytes(myString);
        byte[] isoBytes = Encoding.Convert(utf8, iso, utfBytes);
        msg = iso.GetString(isoBytes);
}
et aussi cette manière :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
myString = myString.Replace("%20", " ").Replace("%3A", ":").Replace("%3C", "<").Replace("%2F", "/").Replace("%3E", ">");
myString = myString.Replace("%E9", "é").Replace("%E7", "ç").Replace("%E2", "â").Replace("%E0", "à").Replace("%2C", ",");
myString = myString.Replace("%0D", "\r\n").Replace("%0A", "\n").Replace("%27", "'");

Mais dans les deux cas, il ne se modifie pas dans ma base de donnée sqlserver je me retrouve avec les %20, %E9 etc....

Quelqu'un aurait une idée pour régler ce problème?

Merci