2010-09-29 3 views
0

J'ai un flux d'atomes sur un blog wordpress ici: http://blogs.legalview.info/auto-accidents/feed/atomComment puis-je empêcher que des caractères étranges quand on tire le flux d'atomes d'un blog 3.0 wordpress

Lorsque je télécharge le texte du fichier et l'afficher sur mon site, Je reçois charactes étranges comme les accents « A » ici:

des études récentes montrent que l'accident de voiture ont diminué fatalities concernant la PI près de 10% depuis 2008. la raison de cette

J'utilise le code suivant dans mon C# application web pour télécharger l'alimentation:

 WebClient client = new WebClient(); 
     client.Headers.Add(@"Accept-Language: en-US,en   
          Accept-Charset: utf-8"); 
     string xml_text = client.DownloadString(_atom_url); 

Et xml_text.Contains("Â") renvoie true, mais si je télécharger l'alimentation dans mon navigateur aucune  existe. Je suis assez sûr que c'est un problème de jeu de caractères, mais je ne peux pas comprendre pourquoi. En examinant client.ResponseHeaders, je peux voir qu'il télécharge du texte dans utf-8, et la réponse sur mon site .Net est aussi UTF-8, donc je n'arrive pas à comprendre pourquoi l'étrangeté apparaît

Répondre

1

Je reçois ...fatalities lorsque je force mon navigateur à interpréter le flux comme ISO-8859-1 au lieu de UTF-8 (qui est certainement le jeu de caractères correct pour le flux.)

Je suis assez sûr que votre WebClient est en ISO par défaut -8859-1, ou le codage de sortie sur votre site est ISO-8859-1, ce qui brouille évidemment l'entrée UTF-8.

Commencez peut-être à vérifier la sortie de votre site en premier. Si c'est définitivement UTF-8, jetez un coup d'œil au WebClient.

+0

Cela m'a mis sur la bonne voie. 'client.Encoding = Encoding.UTF8;' l'a corrigé. 'client.Headers.Add (@" Accept-Language: fr-FR, fr Accept-Charset: utf-8 ");' était inutile et insuffisant –

Questions connexes