2014-01-13 36 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