[英]Dot Net - XSL Transformation of XML file with special character entity reference
我有一個XML文件,我正在對其應用XSL轉換以在Dot Net中獲得純文本/ CSV文件。
問題是我的XML文件有特殊字符,例如“&”。 為“&”。 當我用XSL轉換它時,我得到相同的“&” 在輸出以及我正在尋找“&”的地方。
我正在尋找一個選項,可以對“&”進行一些XSL轉換 轉換為“&”。
范例:
XML源數據:Adam& 前夕
XSL至今的Ouput:Adam&Eve
所需的輸出:亞當和夏娃
有什么建議嗎?
謝謝!!
您可以為此使用disable-output-escaping="yes"
,例如:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="name">
<xsl:copy>
<xsl:value-of select="." disable-output-escaping="yes" />
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
如果你有例如
<foo>Adam & Eve</foo>
在XML輸入和XSLT集中
<xsl:output method="text"/>
和
<xsl:template match="foo">
<xsl:value-of select="."/>
</xsl:template>
那我肯定結果是Adam & Eve
。 如果逃脫了“&”號,則可能是錯誤的輸出方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.