Problème avec les caractères spéciaux é è à â ... [Résolu]

Signaler
Messages postés
143
Date d'inscription
lundi 15 mars 2010
Statut
Membre
Dernière intervention
12 juin 2013
-
Messages postés
25
Date d'inscription
vendredi 27 novembre 2009
Statut
Membre
Dernière intervention
20 septembre 2011
-
Salut,
Je suis stagiaire dans une boîte d'informatique où je dois créer un programme de e-syndic avec ASP.NET mais en utilisant le langage VB. Avec ce programme, le syndic devra pouvoir envoyer des mails à ses copropriétaires et en recevoir.
Là je suis à la fin de mon stage (je finis à la fin de la semaine) et quasiment tout marche sauf un tout petit truc : Le syndic ou ( le copropriétaire) quand il veut envoyer un mail, il doit remplir un champ "Sujet". Lorsqu'il envoie, un fichier .rtf se crée dont le nom est composé du champ "Sujet". Le PROBLèME c'est que lorsqu'il y a un caractère spécial (é à ç è â û ...) le fichier accepte ce caractère spécial (je veux dire que le nom du fichier est correct avec é à è ...) mais lorsque je veux y accèder avec la ligne de code suivante :

System.Diagnostics.Process.Start("C:\Users\administrateur\Desktop\MohaBaba\Test\SiteESyndic\Réclamations\Message de " & Me.GridView1.SelectedRow.Cells(2).Text & " " & Me.GridView1.SelectedRow.Cells(3).Text & " " & Me.GridView1.SelectedRow.Cells(4).Text & " au Syndic.rtf")


il ne peut pas.Pourquoi?J'ai débugger et j'ai vu qu'il cherchait un fichier ayant quasiment le même nom que le mien sauf qu'au lieu d'un caractère spécial (é à è ...) il y a une suite de chiffres et de symboles (genre ;Ă&; --j'ai tapé tout seul la suite, trop fainéant pouraller la récupérer). Je sais que c'est la codification du caractère.Mais je voudrais une solution pour pouvoir éviter ça.(j'ai essayer avect le TextBox1.Text et TextBox1.ToString et ça ne marche pas non plus)

C'est vraiment urgent (sinon mes utilisateurs devrons ne plus utiliser les accents!!!)

Forza Taraji!!

Forza Taraji!!

4 réponses

Messages postés
143
Date d'inscription
lundi 15 mars 2010
Statut
Membre
Dernière intervention
12 juin 2013
1
On m'a donné une meilleure solution et beaucoup plus simple :

txt = HttpUtility.HtmlDecode(Texte)


et ça marche.

Forza Taraji!!
Messages postés
25
Date d'inscription
vendredi 27 novembre 2009
Statut
Membre
Dernière intervention
20 septembre 2011
1
Dans le pire des cas, tu fait plusieurs:
Sujet.Replace("é","e");
Sujet.Replace("à","a");
ect, le tout pour chaque caractères spécial avant de créer ton fichier. Du coup, tu n'auras plus aucun accent dans ton nom de fichier ;)
Messages postés
143
Date d'inscription
lundi 15 mars 2010
Statut
Membre
Dernière intervention
12 juin 2013
1
Salut.
Tout d'abord merci pour ta réponse mais j'ai finalement fais une petite fonction qui reprend la majorité des caractères spéciaux que l'on a l'habitude d'utiliser.Cette fonction, lorsqu'elle reconnait un "&", remplace les 6 caractères (genre é ) par sa lettre correspondante.
Je t'invite à aller voir ma source que j'ai publié sur vbfrance (si tu trouve ça un peu bordellique,bin t'as pas tort mais je l'ai fais en urgence).
Le lien :
http://www.vbfrance.com/code.aspx?ID=52195

Forza Taraji!!
Messages postés
25
Date d'inscription
vendredi 27 novembre 2009
Statut
Membre
Dernière intervention
20 septembre 2011
1
C'est bon à savoir ^^.
Je serais comment faire lorsque je rencontrerais ce problème