"标签-6ren"> "标签-我正在转换一些 XML 数据以适应格式为“Excel XML Spreadsheet 2003”的文档 一切正常,但我在生成结果文件的正确 header 时遇到了问题。它基本上应该是以下形式: -6ren">
gpt4 book ai didi

XML - XSLT 转换 - 生成特殊的 ""标签

转载 作者:数据小太阳 更新时间:2023-10-29 02:00:38 26 4
gpt4 key购买 nike

我正在转换一些 XML 数据以适应格式为“Excel XML Spreadsheet 2003”的文档

一切正常,但我在生成结果文件的正确 header 时遇到了问题。它基本上应该是以下形式:

<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">

<!-- end of header here and the transformation data goes below -->

<Workbook>

XSLT 文件是

<?xml version="1.0" encoding="utf-8"?>
<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" media-type="text/xml"/>
<xsl:template match="/">
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">

但在结果文件中 <?mso-application progid="Excel.Sheet"?>行丢失。

我明白 <? ...?>是一个特殊的标签 - 所以可能的问题是 XSLT 如何生成它

谢谢

最佳答案

对于任何输入,此样式表:

<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" media-type="text/xml"/>
<xsl:template match="/">
<xsl:processing-instruction name="mso-application">progid="Excel.Sheet"</xsl:processing-instruction>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40"/>
</xsl:template>
</xsl:stylesheet>

结果:

<?xml version="1.0" encoding="utf-8"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:html="http://www.w3.org/TR/REC-html40" />

关于XML - XSLT 转换 - 生成特殊的 "<? ... ?>"标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3300392/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com