2014-01-13 35 views
0

我下载一个网页(http://library.islamweb.net/hadith/RawyDetails.php?RawyID=1),它包含了一些阿拉伯语,它与“查看源文件”选项,在浏览器中查看时(铬/ IE)看起来不错:网页不正确的编码下载阿拉伯语

<span lang="ar-qa">رقم الراوي</span> 

但是下载时的模样:

<span lang="ar-qa">ÑÞã ÇáÑÇæí</span> 

我的代码是非常简单的:

client.DownloadFile(_webPath, savePath); 

什么是错的?

回答

1

你的网页的编码字符集是“窗口-1256”,所以你需要使用该编码来阅读:

private void GetRepliesStats_Load(object sender, EventArgs e) 
     { 
      WebBrowser bro = new WebBrowser(); 
      bro.Navigate("http://library.islamweb.net/hadith/RawyDetails.php?RawyID=1"); 
      bro.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(BrowsingCompleted); 


     } 

private void BrowsingCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
      { 
       WebBrowser browser = sender as WebBrowser; 

       Stream documentStream = browser.DocumentStream; 
       StreamReader streamReader = new StreamReader(documentStream, Encoding.GetEncoding("windows-1256")); 

       documentStream.Position = 0L; 
       String My_Result = streamReader.ReadToEnd(); 


} 

我希望这有助于。

+0

谢谢我只需要知道它是什么类型的编码,你是如何发现的? – sprocket12

+1

取决于您的浏览器。对于Chrome浏览器:右键单击>查看页面源,然后搜索keywork'charset'。 – user3185569