HtmlAgilityPack读取数据通过文件流写入到txt中

时间:2021-07-13 20:59:13
现在是能读取到数据,但是我创建的log.txt中没有数据,我要实现的是让读取的问题同时写入到txt中
请大神帮忙看看,在线等


 int i = 0;
           //创建一个htmlweb对象
           HtmlWeb web = new HtmlWeb();
           web.AutoDetectEncoding = true;
           //读取内容返回HtmlAgilityPack.HtmlDocument对象
           HtmlAgilityPack.HtmlDocument doc= web.Load(tBtxt_Url.Text.Trim());
           HtmlNode node = doc.GetElementbyId("post_list");
           //文件流
           StreamWriter sw = File.CreateText("log.txt");

           foreach (HtmlNode child in node.ChildNodes)
           {
               if (child.Attributes["class"] == null || child.Attributes["class"].Value != "post_item")
                   continue;
               HtmlNode hn = HtmlNode.CreateNode(child.OuterHtml);          
               Write(sw, String.Format("推荐:{0}", hn.SelectSingleNode("//*[@class=\"diggnum\"]").InnerText));
               Write(sw, String.Format("标题:{0}", hn.SelectSingleNode("//*[@class=\"titlelnk\"]").InnerText));
               Write(sw, String.Format("介绍:{0}", hn.SelectSingleNode("//*[@class=\"post_item_summary\"]").InnerText));
               Write(sw, String.Format("信息:{0}", hn.SelectSingleNode("//*[@class=\"post_item_foot\"]").InnerText));
               string url = hn.SelectSingleNode("//*[@class=\"titlelnk\"]").Attributes["href"].Value.ToString();
               Write(sw, String.Format("网址:{0}", url));
               Write(sw, "-------------------------------------------------------------------------------------------------------");
               
               i++;
           }
           
           sw.Close();


private void Write(StreamWriter writer, string str)
        {
            if (this.InvokeRequired)
            {
                ShowText st = new ShowText(Write);
                this.Invoke(st, str);
               
            }
            else
            {
                listBox_Content.Items.Add(str);
            }

6 个解决方案

#1


HtmlAgilityPack读取数据通过文件流写入到txt中

#2


没人解答吗!,,新手求问

#3


看看你有没有在Html节点取到值?

#4


HtmlAgilityPack读取数据通过文件流写入到txt中你直接
sw.write() 不行?

#5


好像不行吧 我也不知道同时写入listbox是否还能写入到txt中

#6


writer.WriteLine(str); 问题已经解决

#1


HtmlAgilityPack读取数据通过文件流写入到txt中

#2


没人解答吗!,,新手求问

#3


看看你有没有在Html节点取到值?

#4


HtmlAgilityPack读取数据通过文件流写入到txt中你直接
sw.write() 不行?

#5


好像不行吧 我也不知道同时写入listbox是否还能写入到txt中

#6


writer.WriteLine(str); 问题已经解决