【问题标题】:Move a directory in ColdFusion and Railo在 ColdFusion 和 Railo 中移动目录
【发布时间】:2015-10-13 23:19:53
【问题描述】:

在 Adob​​e ColdFusion (ACF) 中,我一直使用 cffile action="rename" 来移动文件和目录。并非没有道理,Railo 认为 cffile 不适用于目录,因此您需要使用 cfdirectory 重命名,并且效果很好。但是,这在 ACF 中似乎不起作用。

例如:

<cfdirectory action="RENAME" directory="C:/tmp/aaa1/aaa2/" newDirectory="C:/tmp/aaa2">

...在 Railo 中工作,但在 ACF 中会抛出这个:

The specified directory attribute C:/tmp/aaa1/aaa2/ cannot be renamed to newdirectory C:\tmp\aaa1\C:\tmp\aaa2.

看来您必须使用cffile 来移动ACF 上的目录,以及Railo 上的cfdirectory。 这真的是最先进的吗?有没有办法让 cfdirectory 在 ACF 上移动目录?

【问题讨论】:

    标签: coldfusion railo cfdirectory


    【解决方案1】:

    没关系,但如果你使用反斜杠,它会起作用。

    对于我知道的所有其他文件操作,我会将其归类为 CF 中的错误(我正在使用 CF9.0.1 进行测试),无论是斜线在 CF 上都可以正常工作。

    【讨论】:

    • 有趣。在'nix上也是如此吗?理想情况下,我正在寻找在 ACF、Railo(尽管我没有提到它并且还没有尝试过 Open BlueDragon)、Windows、Linux 和 Mac 上工作相同的构造。
    • Windows 上的 Java(以及扩展名 CF)将接受这两种类型的斜杠作为文件分隔符。这是我唯一一次看到它不起作用。在 *nix 上,必须使用 fwd 斜杠。然而,这样做的后果是一个人可以(嗯:应该)能够在两个平台上使用 fwd 斜线而不受惩罚。因此,在编写跨平台代码时:使用正斜杠。
    【解决方案2】:

    我们在 CF10 中开发了一个应用程序,它使用正斜杠作为 cfdirectory action="rename" 中的文件路径。

    <cfdirectory action="rename" directory="//fileserver/folder10/test/TEST74036JJ_CW"  newdirectory="//fileserver/folder10/TEST74036JJ_CW">
    

    此代码在 CF10 中似乎运行良好。

    当我们将代码移动到 CF8 服务器时,我们收到了同样的错误,新目录路径被附加到原始目录的末尾。

    指定目录属性//fileserver/folder10/test/TEST74036JJ_CW不能重命名为newdirectory \\fileserver\folder10\test\fileserver\folder10\TEST74036JJ_CW

    因此,CF10 现在似乎可以处理 cfdirectory action="rename" 的正斜杠。

    【讨论】:

      【解决方案3】:

      我只有通过改变才能得到解决方案。在属性 newDirectory 上不写路径,只写新文件夹名称并准备好。试试看。这是我的选择。我用的是coldfucion 9.0.1

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-06
        • 2023-03-19
        • 2015-10-31
        • 1970-01-01
        • 2011-01-19
        • 2014-09-17
        相关资源
        最近更新 更多