使用SgmlReader将HTML转换为合法的XML
2009-05-02 22:32
316 查看
public static string Convert(string html)
{
if (string.IsNullOrEmpty(html.Trim()))
{
return string.Empty;
}
using (SgmlReader reader = new SgmlReader())
{
reader.DocType = "HTML";
reader.InputStream = new StringReader(html);
using (StringWriter stringWriter = new StringWriter())
{
using (XmlTextWriter writer = new XmlTextWriter(stringWriter))
{
reader.WhitespaceHandling = WhitespaceHandling.None;
writer.Formatting = Formatting.Indented;
XmlDocument doc = new XmlDocument();
doc.Load(reader);
if (doc.DocumentElement == null)
{
return string.Empty;
}
else
{
doc.DocumentElement.WriteContentTo(writer);
}
writer.Close();
string xhtml = stringWriter.ToString();
return xhtml;
}
}
}
}
其他相关资料:http://www.kaiyuan8.org/Article/KLNvXMQhmKeyQyVGCfBZ.aspx
http://www.eggheadcafe.com/articles/20030317.asp
{
if (string.IsNullOrEmpty(html.Trim()))
{
return string.Empty;
}
using (SgmlReader reader = new SgmlReader())
{
reader.DocType = "HTML";
reader.InputStream = new StringReader(html);
using (StringWriter stringWriter = new StringWriter())
{
using (XmlTextWriter writer = new XmlTextWriter(stringWriter))
{
reader.WhitespaceHandling = WhitespaceHandling.None;
writer.Formatting = Formatting.Indented;
XmlDocument doc = new XmlDocument();
doc.Load(reader);
if (doc.DocumentElement == null)
{
return string.Empty;
}
else
{
doc.DocumentElement.WriteContentTo(writer);
}
writer.Close();
string xhtml = stringWriter.ToString();
return xhtml;
}
}
}
}
其他相关资料:http://www.kaiyuan8.org/Article/KLNvXMQhmKeyQyVGCfBZ.aspx
http://www.eggheadcafe.com/articles/20030317.asp
相关文章推荐
- 使用XSLT将XML数据转换成HTML
- 使用XSLT将XML数据转换成HTML
- C#中使用XSLT文件将XML文档转换为HTML
- 使用C#.NET来实现 XML+XSL=>HTML的转换
- 使用 JTidy 将 HTML 文件转换成 XML
- 使用XSLT将XML数据转换成HTML
- c#使用XSLT将xml文档转换为html文档
- 使用XSLT将XML数据转换成HTML
- 使用XSLT将XML数据转换成HTML
- 使用XSLT将XML数据转换成HTML
- 使用Python把Gtest XML测试结果转换为HTML格式
- 使用XSLT将XML数据转换成HTML
- 使用XSLT将XML数据转换成HTML
- 字符串内特殊字符在html_javascript_xml等内使用时的转换 ,"缺少十六进制数字"错误的处理
- c#使用XSLT将xml文档转换为html文档
- XSL 语言入门2 -- 使用XSLT将XML转换为(X)HTML
- 使用XSLT将XML数据转换成HTML
- 使用Python把Gtest XML测试结果转换为HTML格式
- 使用ASIHTTPRequest 编译提示找不到"libxml/HTMLparser.h"的解决方法
- 使用SandCastle和HTML Help 2.0集成XML代码注释到VS2005和VS2008