使用UTF-8和ASCII检查文件时使用Coldfusion FileExists的问题

时间:2018-05-13 22:45:48

标签: java encoding utf-8 coldfusion file-exists

当尝试使用FileExists函数检测以UTF-8编码的文件的存在时,找不到文件。

我发现在Coldfusion服务器中, Java文件编码最初设置为" UTF-8"。由于某种未知的原因,它又回到了默认状态" ASCII"。我怀疑这是问题所在。

例如,用户上传了一张名为云拼花.jpg的照片,而服务器Java文件编码设置为UTF-8,现在将服务器Java文件编码设置为ASCII,我使用

<cfif FileExists("#currentpath##pic#")>

将找不到结果,即文件不存在。但是,如果我只是使用以下方式显示它:

<IMG SRC="/images/#pic#">

将显示图像。当我尝试测试图像的存在时,这会引起问题。图像在那里,但FileExists无法找到。

现在该目录包含以UTF-8或ASCII编码的混合文件。无论如何:

  1. 强制任何上传文件为UTF-8编码
  2. 检查文件是否存在
  3. 无论CF Admin Java文件编码设置如何?

1 个答案:

答案 0 :(得分:0)

将此添加到您的页面。

<cfprocessingdirective pageencoding="utf-8">

这应解决问题。