2012-08-23 44 views
0

如何在我的服务器上复制文件? 我可以用<cffile action="read">阅读它,但我想用一个新名称复制它。我发现<cffile action="copy">但我只能复制到另一个目录。我需要在同一个目录中复制它。如何复制文件?

Thnx。

+0

cffile action =“copy”对于同一目录正常工作。如果您在发布错误时发布了详细信息和确切的代码。 –

回答

4

没有,<cffile action="copy">可以创建在同一目录中现有的文件的副本。只要你使用不同的文件名。所以如果你不能这样做,其他的事情就会出错。请发布您的代码和任何错误消息。

+3

文档确实在cffile“copy”....的描述下说“将文件从一个目录复制到服务器上的另一个目录”。但是,从Leigh注释开始,它确实在“目的地”属性描述下指出,如果您省略路径并为其指定文件名,那么ColdFusion将使用相对于源的路径。 –

1

未经测试,但一个选项可能是以二进制形式读取文件,然后将其写入新文件。

实例从Adobe文档的底部,在这里拍摄: - http://livedocs.adobe.com/coldfusion/8/htmldocs/help.html?content=Tags_f_08.html

<cffile action = "readBinary" file = "C:\inetpub\wwwroot\cfdocs\getting_started\photos\somewhere.jpg" variable = "aBinaryObj"> 

    <!--- Output binary object to JPEG format for viewing. ---> 
    <cffile action="write" file = "c:\files\updates\somewhereB.jpg" output = "#toBinary(aBinaryObj)#"> 

    <!--- HTML to view image. ---> 
    <img src="C:\files\updates\somewhereB.jpg"> 
+0

感谢您的快速响应! –

1

接受的答案是过于复杂化。 这就是你需要的全部:

<cffile action="COPY" source="C:\inetpub\wwwroot\cfdocs\getting_started\photos\somewhere.jpg" destination="C:\inetpub\wwwroot\cfdocs\getting_started\photos\somewhere_Copy.jpg"> 
+0

如上所述,cffile copy并不局限于同一个目录。所以别的事情正在发生...... – Leigh