我把我的头发拉到这里,真的搞不懂为什么这个代码不能工作。我需要使用<cffile action="write">将文档放到服务器上。
为了让文件写入服务器,我已经将代码删除到最低限度,但是它仍然不改变。我正在运行的代码如下。
<cffile action = "write"
file = "test.txt"
output = "Content"
>当我在服务器上运行这段代码时,它什么也不做。我在屏幕上没有收到错误消息,但是服务器上也没有出现任何文件.
我已经搜索了一段时间了,我唯一能想到的就是编写绝对文件路径,所以我也尝试过这样做
<cffile action = "write"
file = "http://www.my_url.com/test.txt"
output = "Content"
>这确实给了我一条错误消息(见下文),但是搜索如何对此错误消息进行排序已经不太有用了。
An error occurred when performing a file operation write on file
http://www.my_url.com/test.txt.
The cause of this exception was: java.io.FileNotFoundException:
http://www.my_url.com/test.txt.我认为这可能是我的特权的问题,但是在的末尾没有‘访问被拒绝’的错误,所以我真的不知道该怎么做。
这是双重愤怒,因为在这个确切的网站,我也使用<cffile action="upload">,它的工作绝对好!
发布于 2012-08-23 14:32:22
如上所述,cffile只在服务器文件系统上运行。所以您需要使用物理文件路径,而不是url。此外,文档还指出,如果您使用了文件被写入的相对路径:
“.(路径)相对于ColdFusion临时目录,该目录由GetTempDirectory函数返回。”
因此,如果您没有收到一个错误,文件是创建的,只是不符合您的预期。为了避免这种混乱,请使用绝对路径:
<cffile action="write" file="c:/path/to/test.txt" output="Content">https://stackoverflow.com/questions/12093623
复制相似问题