所以,我使用HtmlAgilityPack生成html,它的工作完美,但HTML文本不缩进。不过,我可以使用缩进的XML,但我需要HTML。有没有办法?HtmlAgilityPack:如何创建缩进的HTML?
HtmlDocument doc = new HtmlDocument();
// gen html
HtmlNode table = doc.CreateElement("table");
table.Attributes.Add("class", "tableClass");
HtmlNode tr = doc.CreateElement("tr");
table.ChildNodes.Append(tr);
HtmlNode td = doc.CreateElement("td");
td.InnerHtml = "—";
tr.ChildNodes.Append(td);
// write text, no indent :(
using(StreamWriter sw = new StreamWriter("table.html"))
{
table.WriteTo(sw);
}
// write xml, nicely indented but it's XML!
XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
settings.Indent = true;
settings.ConformanceLevel = ConformanceLevel.Fragment;
using (XmlWriter xw = XmlTextWriter.Create("table.xml", settings))
{
table.WriteTo(xw);
}
看起来这是真的,需要另一个lib来解决这么简单的任务。 HtmlAgilityPack肯定需要这个小小的改进。 – 2011-05-10 11:29:16
那么,有没有办法让它不吐出最小化的HTML? (即敏捷包出来的HTML是不可读的,它全部压缩在一行上,没有办法插入换行符或制表符来使其可读?) – BrainSlugs83 2015-07-08 23:09:07