0

关于 File.getParents() 和 File.makeCopy 的参考不清楚。

对于 File.getParents,将返回什么(它们是所有祖先文件夹以及路径还是它们都是父文件夹,因为 File 可能有多个父文件夹?),以及以什么顺序?

对于 File.makeCopy,如果 File 有多个父级,新文件将位于哪个文件夹?

从一些测试来看,如果根文件夹是父文件夹之一,getParents 似乎总是将根文件夹作为返回数组中的最后一个元素,无论它何时添加到父列表中,其他文件夹是随机排序的。即使原始文件没有 Root 作为其父文件,makeCopy 也总是将新文件放入 Root 文件夹中。

编辑:有人说“DriveApp 服务于 2013 年 8 月 20 日更新,使用新方法 File.makeCopy(destination) 和 File.makeCopy(name, destination),它们允许脚本指定应将文件复制到的文件夹。” 在这篇文章中。但我刚刚测试它今天不起作用。

removeFromFolder() 也有延迟生效。有时您可以看到位于根文件夹及其指定文件夹中的文件。

请解释。

4

1 回答 1

0

您的观察是正确的,根始终是任何文件的最高父级(这就是它称为“根”的原因),除非您明确删除它(例如参见这篇文章)并且当您复制(或创建)一个文件时,这个文件总是在 Root 中,无论它来自何处,都取决于您将其移动到正确的位置(这里有很多关于该主题的帖子),除非您使用 folder.createFile() 和类似方法进行复制......这种情况下该文件仅存在于其父文件夹中。

于 2013-09-27T08:42:11.983 回答