XSLT 将 HTML 转换为 Markdown 不起作用
本文关键字:Markdown 不起作用 转换 HTML XSLT | 更新日期: 2023-09-27 18:35:22
我正在使用此处找到的XSLT将HTML格式的内容转换为Markdown格式,但我得到的结果是纯文本,没有Markdown格式语法。这是我正在使用的功能:
private static string ConvertToText()
{
string text = string.Empty;
XmlDocument xsl = new XmlDocument();
xsl.CreateEntityReference("nbsp");
xsl.Load(System.Web.HttpContext.Current.Server.MapPath("/Test/markdown.xslt"));
XmlReader xr = XmlReader.Create(System.Web.HttpContext.Current.Server.MapPath("/Test/html.xml"));
//creating stringwriter
StringWriter writer = new System.IO.StringWriter();
XslCompiledTransform xslt = new XslCompiledTransform();
xslt.Load(xsl);
xslt.Transform(xr, null, writer);
//return string
text = writer.ToString();
writer.Close();
return text;
}
谁能告诉我为什么它不起作用?
谢谢。
我想你的问题是输入XML中的xmlns。在转换 xr
变量之前,请尝试将其删除,或者使用命名空间声明调整 XSL 文件,如下所示:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:html="http://www.w3.org/1999/xhtml">
...
<xsl:template match="html:h3">
...