通八洲科技

如何用XSLT生成文本文件 output method="text"

日期:2025-12-29 00:00 / 作者:幻夢星雲
用XSLT生成纯文本需设method="text"并显式声明,配合strip-space、避免模板空白、用xsl:text控格式;示例CSV输出每行严格两列无标签。

用 XSLT 生成纯文本文件,核心是设置 output method="text",并确保模板中只输出文本内容(不产生标签、空格、换行等意外字符)。

正确声明输出方法

在 XSLT 根元素 内,必须显式声明:

注意:
method="text" 关闭 HTML/XML 序列化逻辑,避免转义、自动闭合、DOCTYPE 等行为;
• 显式指定 encoding(如 UTF-8)可防止中文乱码;
• 不要同时设置 indent="yes"(对 text 无效,且部分处理器会警告)。

控制输出内容:只写文本,不写标签

XSLT 默认会把源 XML 中的文本节点、空白、标签结构都参与处理。生成纯文本时需主动抑制无关内容:

典型文本输出示例:生成 CSV 行

假设输入 XML 是一组人员信息,想导出为逗号分隔的纯文本:


  
  

  

说明:
安全插入换行( 是 LF 字符),避免因模板换行引入不可控空白;
• 没有 ,所以不会透传源文档中多余的空白;
• 输出结果是严格两列、每行一条记录的纯文本,无 XML 声明、无标签、无额外空行。

调试技巧:检查实际输出字节

文本输出容易被隐藏字符干扰(如 BOM、CR/LF 差异、零宽空格)。建议: