HttpWebRequest-Encoding - UTF-8

Ich bin versucht zu Holen von Daten aus einer web-Seite, aber ich konfrontiert Charakter-problem. Die web-Seite ist in utf-8-format und multi-Sprache, in diesem Fall kann ich Holen die Englisch-basierte senteces/Daten ohne irgendein problem, aber für Italienisch, Spanisch und Türkisch-Daten, ich bin immer falsche Zeichen.

wenn ich die gespeicherte html-Datei für die text-Codierung es sagt : windows-1254

Wie Sie sehen können in meiner Methode habe ich versucht zu lösen das problem, indem Sie in streamreader ;

    Encoding.GetEncoding("utf-8")
    Encoding.Default
    Encoding.UTF8

Httpwebrequest :

string postdata = "username" + usern + "&pass=" + pass";
byte[] bytes = new UTF8Encoding().GetBytes(postdata);
 HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.*******.com/login.php");
request.Method = "POST";
request.KeepAlive = true;
request.CookieContainer = cont;
request.AutomaticDecompression = DecompressionMethods.Deflate;
request.CookieContainer.Add(cok);
request.ContentType = "text/html; charset=utf-8";                  
request.UserAgent = "Mozilla/2.0 (Windows NT 6.1; WOW64; rv:26.0) Gecko/20100101 Firefox/9.0";
request.ContentLength = bytes.Length;
request.GetRequestStream().Write(bytes, 0, bytes.Length);

HttpWebResponse response = null;
response = (HttpWebResponse)request.GetResponse();          
StreamReader _str2 = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("utf-8"));
 string html = _str2.ReadToEnd();
File.WriteAllText("login_response.html", html);
InformationsquelleAutor LikePod | 2015-08-21
Schreibe einen Kommentar