我用了this从 ASP.NET 网站读取和解析 RSS 提要的解决方案。这非常有效。但是,当在其他站点上尝试时,会出现错误,因为“系统不支持'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 的帮助将不胜感激。
最佳答案
使用以下代码进行编码
System.IO.StreamReader stream = new System.IO.StreamReader
(response.GetResponseStream(), System.Text.Encoding.GetEncoding("utf-8"));
关于c# - XML - 帮助 RSS UTF-8 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4625766/