【问题标题】:ColdFusion, CFDirectory and the FrenchColdFusion、CFDirectory 和法语
【发布时间】:2009-11-11 14:45:52
【问题描述】:

我们有一个 ColdFusion 文件库管理系统,它正在从旧的 ColdFusion 4 服务器上移除,并转移到基于 ColdFusion 8 的新系统上。

我们所有的文件和文件夹都是英文、法文和西班牙文的。

在 CF8 中使用 CFDirectory 加载和显示这些文件和文件夹会导致法语和西班牙语文件和文件夹出现两个问题,但这两个问题可能是相关的。

  1. 没有从 cfdirectory 返回带有重音字符的目录。
  2. 带有重音字符的文件显示为上下颠倒?而不是重音字符。

服务器是带有 SunONE 6.1 Web 服务器的 Solaris 10

更新

我们现在已将问题缩小到 JVM。文件系统看起来不错,但是如果我们包含一个使用基本 Java 文件 IO 的 Java 类,我们会在文件和目录上遇到同样的问题。

任何关于如何在 JVM 中纠正此问题的建议将不胜感激

【问题讨论】:

    标签: coldfusion solaris cfdirectory


    【解决方案1】:

    我没有发现任何与您的问题相关的具体信息,但我确实在Release notes for version 6 中看到了这条说明:

    您不能使用cfinclude 来包含具有双字节文件名的文件。

    没有迹象表明该问题是否已修复。我不确定,但我认为“双字节”文件名是指使用 unicode,我相信你需要使用它来获取文件名中的重音字符......所以它可能在某种程度上与你的问题有关.

    如果您不能简单地重命名文件以删除重音字符,我建议在官方ColdFusion bug database 中提交错误。

    【讨论】:

      【解决方案2】:

      我相信这是您的操作系统问题。

      我在乌克兰语环境的 Ubuntu 上使用 CF8 开发版,并且可以执行以下操作。

      使用双字节字符列出目录:

      <cfset path = "/home/trovich/docs/журнали/" />
      <cfdirectory action="list" directory="#path#" name="qGetDirectory" />
      <cfinclude template="файл_з_іїґ.cfm">
      

      文件файл_з_іїґ.cfm包含以下代码:

      <cfoutput>
      <cfloop query="qGetDirectory">
      #qGetDirectory.name#<br>
      </cfloop>
      </cfoutput>
      

      结果如下:

      Акция
      Ї
      RING0
      root#ua
      PHP!nside
      Phrack Magazine
      phparchitect
      Бійцівський Клуб
      Bricolage
      Друшляк
      

      没有遗漏,完美收录。

      附:希望您的浏览器能够正确呈现 Unicode 字符。

      【讨论】:

      • unicode 字符对我来说渲染得很好。 :) 如果这是真的,那么是的,我怀疑是 JVM 或操作系统问题。
      • 基础设施团队的人告诉我,他们已经为操作系统和 JVM 安装了所有语言包,从网络服务器浏览到文件夹会显示带有重音字符的文件/文件夹
      【解决方案3】:

      问题可能是 CF 4 创建的目录中的字符不是 unicode...事实上,如果 CF4 创建了它们,那么我几乎可以保证它们不是因为 CF 6 之前的不知道 unicode或从地面上的一个洞中提取 utf-8。它通常最终使用了一些奇怪的编码。另一方面,CF6+ 假设几乎所有内容都是 utf-8。

      【讨论】:

      • 感谢您,我们目前正在尝试。但是使用 CF8 中的重音字符创建新文件夹会产生相同的结果……我们将尝试更多测试。
      • 如果是这样,那么我敢打赌问题出在文件系统上
      • 事情是,刚刚检查,文件和目录都在 Dreamweaver 和 Filezilla 中正确显示...
      猜你喜欢
      • 1970-01-01
      • 2015-10-31
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 2011-12-24
      • 2023-03-18
      • 1970-01-01
      相关资源
      最近更新 更多