1

我正在尝试编写一个 XSLT 来生成一个电子表格 ML,以便 Excel 进一步读取并遇到换行问题。我需要在单元格数据中添加换行符。我在 Excel 中制作了一个示例来检查换行符的 Excel 想法,并得到以下信息:

<Data>abc&#10;def</Data>

这里的&#10;引用是一个换行符,Excel 在读回文件时可以很好地理解它。我尝试使用 XSLT 生成相同的内容,但是自然而然地,我得到了一个真正的 0x0A (LF) 字符,所以我的 XML 看起来是这样的:

<Data>abc
def</Data

这似乎与 Excel 表示换行符的方式不一致,当我在 Excel 中打开文件时,我没有得到换行符。

我试图研究这个问题,但除了以下简短的讨论之外什么也没得到,它并没有真正给出解决方案,并表明它可能是 Excel 中的一个错误。(更新:据我了解,这就是规范所说的“编码事故”,XML 解析器不能依赖它们,而 Excel 则需要。)

有没有办法以某种方式解决这个问题并&#10;在输出中获得文字而不是 LF 字符?或者也许以另一种方式解决这个问题?

4

1 回答 1

3

是的,Excel 有自己的方式来区分字符和对该字符LF的字符引用。&#10;

我认为使用 XSLT 1.0 如果你想强制一个字符引用,那么这样做<xsl:text disable-output-escaping="yes"><![CDATA[&#10;]]></xsl:text>是蛮力的方式。

于 2012-11-07T12:08:29.280 回答