2010-01-31 54 views
2

我正在生成html的.net項目。需要工具來格式化html(縮進,添加空格)

當生成html字符串時,沒有空格或縮進。這使得理解生成的html變得困難。

是否有一個工具,將採取我的字符串生成的HTML和格式,使它看起來不錯?

+0

什麼是生成HTML?是HtmlTextWriter的一個選項? – 2010-01-31 15:19:29

+0

你的意思是自動化還是手動工具? – 2010-01-31 15:19:38

回答

5

如果你自己生成HTML,它應該是有效的XML。

因此,您可以使用XDocument類對其進行格式化。

您可以在XDocument之內構建HTML,然後調用ToString(),它將自動爲您設置HTML格式。

此外,XDocument應該比手動字符串連接更容易使用,並且會從本質上保護您免受大多數(但不是全部)XSS攻擊。

2

下面是一個online version of Tidy

+0

拯救了我的生命,一直在尋找這樣的幾個小時! – Liam 2013-03-19 16:53:52

0

您可以使用HtmlTextWriter的,並呼籲HTMLTextWriter.Indent設置行的縮進。

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(); 
}