2017-03-16 89 views
2

我想從使用webclient的頁面獲取文本,但阿拉伯文本顯示不正確。使用WebClient閱讀阿拉伯文本

TEST1:

WebClient webClient = new WebClient(); 
Stream s = webClient.OpenRead(urlLink); 
StreamReader sr = new StreamReader(s); 

TEST2:

String utf8 = webClient.DownloadString(webClient, url, Encoding.UTF8); 

輸出:

我已經使用以下URL = http://www.elnashra.com/嘗試了以下碼El - Elnashra

回答

0

當您在瀏覽器中打開的網址,並與開發者工具檢查響應頭,你可以看到頁面在Windows-1256編碼交付:

Content-Type:text/html;charset=windows-1256 

你能嘗試

webClient.DownloadString(webClient, url, Encoding.getEncoding(1256)); 
0

請嘗試以下 - 這工作我:

  string url = String.Format("http://www.example.com); 

      WebClient webClient = new WebClient(); 

      webClient.Encoding = System.Text.Encoding.GetEncoding(1256); 


      string result = webClient.DownloadString(url); 
0

這工作對我來說,它返回DAT a從DownloadString作爲阿拉伯文字而沒有任何阿拉伯文字的變化

WebClient wclient = new WebClient(); 
    wclient.Encoding = Encoding.UTF8; 
    string RSSData = (wclient.DownloadString(RSSURL)); 
+0

你能解釋爲什麼它更好地工作,宣佈它適合你嗎? – JorgeHortelano