.net读取Rss转换为DataTable
来源: 阅读:951 次 日期:2014-04-19 11:30:11
温馨提示: 小编为您整理了“.net读取Rss转换为DataTable”,方便广大网友查阅!

使用.NET读取Rss数据,并转换为DataTable返回。方法很简单,看一下面的代码吧。

最近需要用asp.net(c#)接收一个Rss。Rss是自己论坛的数据,而Rss是又在Item中加了一个子项。所以写了一个通用的读取Rss的代码,以后即时再增加或者删除Items中的子项,此代码也是可以辨认的。

嗯……贴代码,记录一下吧。

代码如下:

读取Rss返回DataTable

/// <summary>

        /// 获Rss并转换为DataTable返回

        /// </summary>

        /// <param name="filePath">Rss地址</param>

        /// <returns></returns>

         public static DataTable GetRss(string filePath)

        {

            DataTable dt = new DataTable();

            WebClient wc = new WebClient();

            Stream srContent = wc.OpenRead(filePath);

 

            StreamReader sr = new StreamReader(srContent);

            if (!sr.EndOfStream)

            {

                XmlDocument xmlDoc = new XmlDocument();

                xmlDoc.Load(sr);

                XmlNodeList xnl = xmlDoc.SelectNodes("rss/channel/item");

                if (xnl.Count > 0)

                {

                    {//为dataTable添加列标识开始

                        XmlNode xnColumn = xnl[0];

                        XmlNodeList columnsNode = xnColumn.ChildNodes;

                        foreach (XmlNode xn in columnsNode)

                        {

                            DataColumn dc = new DataColumn(xn.Name);

                            dt.Columns.Add(dc);

                        }

                    }//为dataTable添加列标识结束

                    {//为DataTable添加行数据

                        foreach (XmlNode xnDate in xnl)

                        {

                            DataRow dr = dt.NewRow();

                            for (int i = 0; i < dt.Columns.Count; i++)

                            {

                                XmlNode itemValue = xnDate.SelectSingleNode(dt.Columns[i].ColumnName);

                                dr[i] = itemValue.InnerText;

                            }

                            dt.Rows.Add(dr);

                        }

                    }//为DataTable添加列数据

                }

            }

            return dt;

        }

更多信息请查看IT技术专栏

更多信息请查看网络编程
手机网站地址:.net读取Rss转换为DataTable
由于各方面情况的不断调整与变化, 提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!
关于我们 | 联系我们 | 人才招聘 | 网站声明 | 网站帮助 | 非正式的简要咨询 | 简要咨询须知 | 加入群交流 | 手机站点 | 投诉建议
工业和信息化部备案号:滇ICP备2023014141号-1 云南省教育厅备案号:云教ICP备0901021 滇公网安备53010202001879号 人力资源服务许可证:(云)人服证字(2023)第0102001523号
云南网警备案专用图标
联系电话:0871-65317125(9:00—18:00) 获取招聘考试信息及咨询关注公众号:hfpxwx
咨询QQ:526150442(9:00—18:00)版权所有:
云南网警报警专用图标
Baidu
map