2016-03-21 35 views
0

Ich habe an einer kleinen Desktop-Anwendung gearbeitet und einige meiner Anfragen bekomme ich zurück Antwort in Deutsch und Französisch. Aber ich kann sie nicht lesen und das genaue Wort im Etikett anzeigen. Ich habe verschiedene Encoding ausprobiert, um dies aber alles umsonst zu lesen oder ich mache ihnen nicht richtig.So lesen Sie deutsche und französische Sonderzeichen mit C#

Hier ist Code-Schnipsel.

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); 
req.Method = "GET"; 
HttpWebResponse res = (HttpWebResponse)req.GetResponse(); 
StreamReader sr = new StreamReader(res.GetResponseStream(), Encoding.GetEncoding("iso-8859-1")); 

ich auch aber kein Glück

Encoding.Default,true, Encoding.UTF-8

Hier pic die Antwort zu zeigen, dass ich zurück bekam verwenden.

enter image description here

+1

Versuchen Sie 'UTF-8' anstelle von' iso-8859-1' – ThiefMaster

+0

@ThiefMaster danke, es hat funktioniert. –

Antwort

2

Die Daten, die Sie lesen, ist höchstwahrscheinlich UTF8-codiert, so dass, wenn Sie verwenden, dass anstelle von ISO-8859-1 sollte es funktionieren.

Sie sollten dies jedoch nicht fest codieren, da Sie möglicherweise Daten mit unterschiedlichen Codierungen von verschiedenen URLs erhalten. Verwenden Sie die ContentEncoding Eigenschaft der Antwort anstelle der hardcoded Codierung.

+0

Ja, das ist sicher UTF-8-kodierten Text gelesen, als wäre es ANSI oder Latin-1. – UML