【问题标题】:Does the charset attribute of cfloop over a file work correctly in Railocfloop 在文件上的字符集属性是否在 Railo 中正常工作
【发布时间】:2013-08-06 13:14:21
【问题描述】:

Railo 标记显然旨在支持 charset="..." 属性,因为如果使用了非法属性,它会在错误消息中说明。

如果我使用 cfloop 从没有字符集属性的 UTF-8 编码文件中读取行,那么它可以正常工作,但我不知道为什么。我更愿意明确说明 charset="utf-8" 但我不确定这有什么影响。

原因是我希望明确声明 charset="windows-1252" 或 charset="iso-8859-1" 会破坏 UTF-8 编码文件的输入,但它会继续正常工作.看来 charset="..." 不会导致错误,但也没有任何效果。

我不知道明天或在另一台机器上是否可以正确解析没有显式字符集的 UTF-8。

UTF-8 是 cfloop 的默认编码吗?如果不是,是否可以确保使用 UTF-8 编码?

不涉及更改默认 JVM file.encoding 属性的解决方案将是首选。

【问题讨论】:

    标签: character-encoding railo cfloop


    【解决方案1】:

    在挖掘 Railo 源代码后,我已经解决了这个问题。 charset 属性不会(通常)被忽略。我使用的 UTF-8 文件有一个字节顺序标记 (BOM),即使我明确要求我的编辑器在没有字节顺序标记的情况下保存它。事实证明,如果存在 BOM,则字符集属性 忽略,这并非完全不合理的行为。

    如果缺少 BOM,则 charset="utf-8" 属性将确保使用正确的默认编码,而不管 System.file.encoding 属性的设置如何。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-18
      • 2019-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多