You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oxygen XML 25.0+Saxon-PE 11.4:XSLT输出UTF-16 LE BOM编码异常修复

UTF-16 LE BOM输出问题修复方案

1. XSLT中显式指定编码

修改XSLT的<xsl:output>节点,明确指定encoding="UTF-16LE"(DSL为文本格式,需配合method="text"):

<xsl:output method="text" encoding="UTF-16LE" indent="no"/>

Saxon-PE会根据该编码参数自动生成小端序BOM,并以UTF-16LE字节顺序输出内容。

2. 在Oxygen转换场景中强制配置编码

  • 打开Oxygen的「转换场景」对话框,选中目标转换场景并点击「编辑」
  • 切换到「Output」标签页,在「Encoding」下拉菜单中选择UTF-16LE(不要选默认的UTF-16)
  • 确认「Add BOM」选项已勾选,保存场景后重新执行转换

3. 排查XSLT文本处理逻辑

  • 避免使用xsl:character-map或自定义函数手动干预字节输出流程
  • 确保所有输出内容为纯文本,无自定义二进制字节操作

验证输出正确性

转换完成后可通过两种方式确认:

  • 用Notepad++等编辑器打开文件,查看右下角编码标识为「UTF-16 LE」
  • 用十六进制编辑器检查文件开头字节,UTF-16 LE的BOM为FF FE

内容的提问来源于stack exchange,提问作者xinatanil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 06:50:50