java - 对 xslt 使用不同的编码

标签 java xml xslt

对 xml 文档和 xslt 使用不同的编码会产生什么效果。

xslt 样式表的输出编码为 UTF-8,输入 xml 未声明编码,并将使用字符串生成,xslt 内部将是:

<xsl:variable name="doc" select="document('file.xml')"/>

该文件是 iso-8859-1。

使用不同的编码会影响输出吗?

最佳答案

XSLT 操作的树是抽象对象,通常(但不一定)通过解析 XML 文档创建。这些抽象树中的字符来自 ISO 10646 和 Unicode 的字符库;在构建树的任何表示之前,用于输入 XML 的编码中的任何变化都会由 XML 解析器进行分级。

所以你的问题的答案是:如果使用的 XML 解析器知道输入编码,则不同编码对输入的影响为零。如果 XML 解析器不知道也不接受编码,结果将导致 XSLT 引擎根本无法读取输入。

关于java - 对 xslt 使用不同的编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12413220/

相关文章:

java - 为什么我的 Android 主屏幕应用程序小部件无法正常工作?

java - 如何使用 Java 格式化一周中的几天字符串?

java - 如何在没有 opengl 的情况下使用 Javafx?

java - 计算 xsl :result-document in a given stylesheet 的所有出现次数

xslt - 向 XML 添加命名空间属性

xml - 使用 XSL 计算 XML 中的端点

java - 如何使用 Java 在 Raspberry Pi 3 上访问 BLE?

.net - 在 Linq 中将样式表引用添加到 XML 文档?

python - 解析 XML 文件以获取所需数据并将其存储在 Python 中的 mongodb 数据库中

c# - 如何在 XSLT 中进行循环?