1

以下のコードを使用して、utf-8 Web ページを保存します。

    HttpWebRequest myWebRequest = (HttpWebRequest) WebRequest.Create(txtUrl.Text);
    myWebRequest.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1);Accept-Language:fa";
    WebResponse myWebResponse = myWebRequest.GetResponse();
    Stream ReceiveStream = myWebResponse.GetResponseStream();
    Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
    StreamReader readStream = new StreamReader(ReceiveStream, encode);
    string strResponse = readStream.ReadToEnd();
    StreamWriter oSw = new StreamWriter(@"c:\ehsan.html");
    oSw.WriteLine(strResponse);
    oSw.Close();
    readStream.Close();
    myWebResponse.Close();  
    txtUrl.Text = strResponse;

しかし、ehsan.html ファイルと txtUrl では、すべての Unicode 文字は記号です。私の解決策は正しいですか?誰にもアイデアはありますか?

4

2 に答える 2

0
Use "Arabic" instead of UTF-8 for your Encoding
于 2012-09-26T11:42:41.583 に答える
0

読み込んでいるページには以下が含まれています:

<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">

したがって、コードを次のように変更すると:

Encoding encode = System.Text.Encoding.GetEncoding("windows-1256");

できます。(私はテストしました):-)

エンコーディングをハードコードするかどうかはあなた次第であり、同じページまたは異なるエンコーディングのページからのみロードするかどうかによって異なります。

于 2012-09-26T11:45:58.873 に答える