我们有一个ColdFusion文件库管理系统,它将从一个旧的ColdFusion 4服务器上移到基于ColdFusion 8的新系统上。
我们所有的文件和文件夹是英语,法语和西班牙语。
使用CFDirectory在CF8中加载和显示这些文件和文件夹会导致法语和西班牙语文件和文件夹出现两个问题,但这两个问题可能是链接的。
服务器是Solaris 10和SunONE 6.1 6.1服务器
更新
我们现在已经将问题缩小到JVM了。文件系统看起来不错,但是如果我们包含一个使用基本Java文件IO的Java类,那么文件和目录就会遇到同样的问题。
对于如何在JVM中纠正这一问题,我们将不胜感激。
发布于 2009-11-11 17:37:42
我没有发现任何与你的问题有关的细节,但我确实在版本6的发行说明上看到了这张便条
不能使用
cfinclude来包含具有双字节文件名的文件.
没有迹象表明它是否被修复了。我不确定,但我假设“双字节”文件名是指使用unicode,我认为您需要使用unicode来获得文件名中的重音字符.所以这可能在某种程度上与你的问题有关。
如果不能简单地重命名文件以删除重音字符,我建议在正式的ColdFusion错误数据库中提交一个bug。
发布于 2009-11-11 20:18:23
我相信这是你的操作系统问题。
我在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字符。
发布于 2009-11-11 23:22:35
问题可能是,CF4创建的didn中的字符不是unicode...in事实,如果CF4创建了它们,那么我可以很好地保证它们并不是因为CF之前的6不知道unicode或utf-8在地下的一个洞。它通常会使用一些普通的编码。另一方面,CF6+假定几乎所有东西都是utf-8。
https://stackoverflow.com/questions/1715632
复制相似问题