Aller au contenu

[ASP.NET / C#] Problème fortement accentué


Dude76

Messages recommandés

Zog à tous.

Je rencontre un petit souci avec les accents de notre chère et belle langue; Pour l'instant, les réponses trouvées sur le net ne m'ont que peu convaincu...

Voilà mon problème:

J'extraits d'un datagrid un jeu de données, je le travaille en mémoire pour en faire un CSV, je colle ce stream dans un header http en prenant le titre de la page comme nom de fichier.

Hop, le tour est joué, le navigateur client propose bien de télécharger le fichier sans que je n'ai à gérer de fichier sur le serveur.

Mais voilà ...

Le titre commence par "Résultats - ...", et ça passe pas bien dans la fenêtre de téléchargement du fichier, il me colle des caractères à la con en lieu et place des caractères accentués :mouich .

J'ai essayé de passer par différents encodages (UTF-16/8/7, ASCII) rien n'y fait. :D

Finalement, j'ai trouvé dans la journée une solution ... qui me laisse assez perplexe:

faire un encoding en 1251 (-> byte[] ) avant d'envoyer l'encodage ascii (-> string) ... ce qui me permet là de faire sauter les accents (à priori, seul le œ pose problème avec cette méthode).

Et là, comme de bien entendu, le codepage 1251 correspond à ... cyrillique O.o ... logique non ? (1250 et 1252 ne donne pas un tel résultat).

Tiens, demain j'essaierai quand même Server.HTMLEncode, je ne suis pas sûr de l'avoir essayé celle-là.

Sinon, si au passage vous avez aussi une idée du comment faire accepter ces #@! de lettres accentuées en tant que lettres normales dans les regexp ...

Merci pour tout ça. :oups

Lien à poster
×
×
  • Créer...