0

コンテンツがフランス語のサイトがあります。

今、私はこれらを c# を使用してコンソール アプリケーションでHttpWebRequest取得したいと考えています。HttpWebResponse

public string GetContents(string url)
{
    StreamReader _Answer;
    try
    {
        HttpWebRequest WebReq = (HttpWebRequest)WebRequest.Create(url);
        WebReq.Headers.Add(HttpRequestHeader.AcceptEncoding, "utf-8");
        WebReq.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0;Windows NT 5.1;)";
        WebReq.ContentType = "application/x-www-form-urlencoded";
        HttpWebResponse WebResp = (HttpWebResponse)WebReq.GetResponse();
        Stream Answer = WebResp.GetResponseStream();
        Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
        _Answer = new StreamReader(Answer, Encoding.UTF8);
        return _Answer.ReadToEnd();
    }
    catch
    {
    }
    return "";
}

コンテンツを取得しましたが、四角などの奇妙な記号が含まれています。

4

1 に答える 1

4

WebサーバーがUTF-8エンコーディングで応答していることを確認しますか?

アップデート:

ダウンロードしようとしているWebサーバーはISO-8859-1、ではなくの文字エンコードでページを提供していUTF-8ます。

(a)ハードコードされたコンテンツタイプを変更するか、(b)サーバーの応答からコンテンツタイプを読み取ってそれを使用する必要があります。

于 2011-07-01T07:24:20.397 に答える