我在一个 11 MB 的 xml 文件上运行身份转换,它会生成一个 5.5 MB 的文件。我正在使用撒克逊 9.4.0.6。如果我向输出元素添加编码属性,结果文件大小将保持在 11 MB。
带编码:
<xsl:output method="xml" cdata-section-elements="Value" indent="no" encoding="utf-16"/>
无编码:
<xsl:output method="xml" cdata-section-elements="Value" indent="no"/>
最大的不同来自哪里?谢谢
XSLT:
<?xml version="1.0" encoding="utf-16"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" cdata-section-elements="Value" indent="no"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<xsl:apply-templates select="*"/>
</xsl:template>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*" mode="#current"/>
</xsl:copy>
</xsl:template>