如何将使用HAP解析的网页表保存到与网页布局相同的文本文件中?

时间:2014-09-03 16:25:58

标签: c# html asp.net html-agility-pack

我一直在使用HAP来解析我的表格,它使用此代码在网页中完全按照我想要的方式显示..

foreach(var table in doc.DocumentNode.SelectNodes("//table"))
{
    //Response.Write("Found: " + table.Id);
    foreach(HtmlNode row in table.SelectNodes("tr"))
    {
        Response.Write("<br>");
        foreach(HtmlNode cell in row.SelectNodes("th|td"))
        {
            Response.Write(cell.InnerHtml + "<br>");
        }
    }
}

它打印出来就像这样..

阿里,萨利赫(#82358)
邮政信箱:0001
阿布扎比0000
阿拉伯联合酋长国 电话:+1234567890

阿里,萨利赫(#82358)
邮政信箱:0001
阿布扎比0000
阿拉伯联合酋长国 电话:+1234567890

等...

我试图让它写入一个完全相同的文件并遇到问题,当我将其添加到foreach语句中以编写单元格时

sb1.Append(cell.InnerHtml + "<br>");
sb1.AppendLine();
sb1.Append("<br>");

并且在完成循环之后

string str3 = str2.Replace("<br>", Environment.NewLine).Replace("&nbsp;", " ")
            .Replace("                        ", "");
System.IO.File.WriteAllText(@"C:\BBBBB.txt", str3);

当我查看文本文件时,它几乎看起来就像在网页中那样,但是我需要处理很多空白空间。但是,如果我将html页面保存为浏览器中的文本文件(运行应用程序时),则会在文本文件中将其精确地放在网页上。

我已经尝试过,将单元格innerHtml写入文本文件,并尝试保存单元格内部文本但无论如何,我仍然发现自己必须替换字符串。

如何保存到文本文件时网页布局是否相同?

0 个答案:

没有答案