簡體   English   中英

Dot Net-具有特殊字符實體參考的XML文件的XSL轉換

[英]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 &amp; 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM