需要工具格式化html(缩进,添加空格)

时间:2010-01-31 15:18:11

标签: c# .net html formatting indentation

我正在开发一个生成html的.net项目。

生成html字符串时,没有空格或缩进。这使得理解生成的html变得困难。

是否有一个工具可以使用我生成的html字符串并对其进行格式化以使其看起来不错?

5 个答案:

答案 0 :(得分:5)

如果您自己生成HTML,那么它应该是有效的XML。

因此,您可以使用XDocument类对其进行格式化。

您可以在XDocument内构建HTML,然后调用ToString(),这会自动为您格式化HTML。

此外,XDocument应该比手动字符串连接更容易使用,并且本质上可以保护您免受大多数(但不是全部)XSS攻击。

答案 1 :(得分:2)

答案 2 :(得分:1)

您可能有兴趣看一下Tidy,http://tidy.sourceforge.net/

答案 3 :(得分:0)

您可以使用HTMLTextWriter并调用HTMLTextWriter.Indent来设置行的缩进。

答案 4 :(得分:0)

使用https://github.com/AngleSharp/AngleSharp

var parser = new HtmlParser();
var document = parser.Parse(html);

using (var writer = new StringWriter())
{
    document.ToHtml(writer, new PrettyMarkupFormatter());
    return writer.ToString();
}