我有一个XML文档,我需要在Mime Boundary下面添加。 有人可以让我知道我们如何在XSL中做到这一点。 请注意,Mime Boundary始终是静态的,XML中不会有任何附件。我们只需要围绕XML的边界
MIME-Version: 1.0
Content-Type: multipart/Related; type="text/xml"; boundary=_MIME-Boundary
--_MIME-Boundary
content-type: text/xml
Content-ID: BodyPart
Content-Transfer-Encoding: 7bit
<My XML Goes here>.....
--_MIME-Boundary--
由于
答案 0 :(得分:0)
尝试:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" omit-xml-declaration="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/">
<xsl:text>MIME-Version: 1.0
Content-Type: multipart/Related; type="text/xml"; boundary=_MIME-Boundary
--_MIME-Boundary
content-type: text/xml
Content-ID: BodyPart
Content-Transfer-Encoding: 7bit
</xsl:text>
<xsl:copy-of select="."/>
<xsl:text>
--_MIME-Boundary--</xsl:text>
</xsl:template>
</xsl:stylesheet>
请注意,XSLT应用的编码可能与MIME声明不匹配。
答案 1 :(得分:0)
这肯定不是永远做的,但是......
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt" exclude-result-prefixes="msxsl"
>
<xsl:output method="xml" indent="yes" omit-xml-declaration="yes"/>
<xsl:template match="/">
<xsl:text>MIME-Version: 1.0
</xsl:text>
<xsl:text>Content-Type: multipart/Related; type="text/xml"; boundary=_MIME-Boundary
</xsl:text>
<xsl:text>--_MIME-Boundary
</xsl:text>
<xsl:text>content-type: text/xml
</xsl:text>
<xsl:text>Content-ID: BodyPart
</xsl:text>
<xsl:text>Content-Transfer-Encoding: 7bit
</xsl:text>
<xsl:text disable-output-escaping="yes"><?xml version="1.0" encoding="utf-8"?>
</xsl:text>
<xsl:copy-of select="." />
<xsl:text>
--_MIME-Boundary--
</xsl:text>
</xsl:template>
</xsl:stylesheet>
请注意,使用disable-output-escaping
手动添加XML声明。