我試圖從使用windows-1254字符集的網站解析html。但所有土耳其字符都是這樣顯示的:30Windows Phone 8 SDK WebClient編碼問題
實際問題在哪裏?我曾嘗試這些:
webClient.Encoding = System.Text.Encoding.UTF8
webClient.Encoding = System.Text.Encoding.GetString("UTF-8");
的功能如下:
public string ReplaceText(string _text)
{
_text = _text.Replace("Ä°", "İ").Replace("ı", "ı").Replace("ü", "ü").Replace("ÅŸ", "ş").Replace("Å", "Ş").Replace("ç", "ç").Replace("ö", "ö").Replace("ÄŸ", "ğ").Replace("Ç", "Ç").Replace("Ö", "Ö").Replace("Ãœ", "Ü");
return _text;
}
也是這個標題:
webClient.Headers["User-Agent"] = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)";
webClient.Headers["Accept-Charset"] = "windows-1254,utf-8;q=0.7,*;q=0.7";
(與ISO-8859-9,UTF8太)
和這是我如何使用網絡客戶端:
WebClient wb = new WebClient();
wb.Headers["User-Agent"] = "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)";
wb.Headers["Accept-Charset"] = "windows-1254,utf-8;q=0.7,*;q=0.7";
wb.DownloadStringAsync(new Uri("http://www.site.com"));
wb.Encoding = System.Text.Encoding.UTF8;
wb.DownloadStringCompleted += new DownloadStringCompletedEventHandler(DSC);
處理程序:
HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(e.Result);
var inputs = htmlDoc.DocumentNode.SelectNodes("//div[@id=\"mrln-eyhaber\"]//a");
foreach (var input in inputs)
{
textarea.Text += this.ReplaceText(input.Attributes["title"].Value.ToString()) + "\n\n";
}
你能給我一些更多的信息,關於我如何使用它?我創建d新類,並添加了代碼'使用Hardcodet.Silverlight.Util;'然後我將如何使用它與webClient.Encoding? –
哦,上帝對不起,我剛剛添加了'新的CustomEncoding();'現在它的工作!非常感謝你在這裏是你的國家:) –