XML - помогите с поддержкой RSS UTF-8 - PullRequest
2 голосов
/ 07 января 2011

Я использовал это решение для чтения и анализа RSS-канала с веб-сайта ASP.NET.Это сработало отлично.Однако при попытке его на другом сайте возникает ошибка, поскольку «система не поддерживает кодировку utf8».Ниже я включил выдержку из моего кода.

    private void Form1_Load(object sender, EventArgs e)
    {
        lblFeed.Text = ProcessRSS("http://buypoe.com/external.php?type=RSS2", "ScottGq");

    }

    public static string ProcessRSS(string rssURL, string feed)
    {
        WebRequest request = WebRequest.Create(rssURL);
        WebResponse response = request.GetResponse();
        StringBuilder sb = new StringBuilder("");
        Stream rssStream = response.GetResponseStream();
        XmlDocument rssDoc = new XmlDocument();
        rssDoc.Load(rssStream);
        XmlNodeList rssItems = rssDoc.SelectNodes("rss/channel/item");
        string title = "";
        string link = "";
   ...

Ошибка происходит в "rssDoc.Load (rssStream);".Буду признателен за любую помощь в правильном кодировании XML.

1 Ответ

3 голосов
/ 07 января 2011

используйте следующий код для кодирования

 System.IO.StreamReader stream = new System.IO.StreamReader
                    (response.GetResponseStream(), System.Text.Encoding.GetEncoding("utf-8"));
...