¿Versión C # de HTML Tidy?
Solo estoy buscando una forma realmente fácil de limpiar algo de HTML (posiblemente con código JavaScript incrustado). Lo intentédos diferente HTML ordenado Los puertos .NET y ambos están lanzando excepciones ...
Lo sentimos, por "limpio" me refiero a "sangría". El HTML no está mal formado, en absoluto. SusXHTML estricto.
I finalmente tengo algo trabajando conSGML, pero este es en serio el fragmento de código más ridículo que haya sangrado algún código HTML.
private static string FormatHtml(string input)
{
var sgml = new SgmlReader {DocType = "HTML", InputStream = new StringReader(input)};
using (var sw = new StringWriter())
using (var xw = new XmlTextWriter(sw) { Indentation = 2, Formatting = Formatting.Indented })
{
sgml.Read();
while (!sgml.EOF)
xw.WriteNode(sgml, true);
}
return sw.ToString();
}