Doc to PDF - 删除复制的文件,但不是Doc在root用户时

时间:2017-01-16 12:51:05

标签: google-apps-script

以下代码在doc位于文件夹中时有效,但在驱动程序根目录中时则无效。 然后删除PDF。当doc是root用户时,如何才能完成这项工作?

private final Cache<String, DataBuilder> cache =
      CacheBuilder.newBuilder().maximumSize(10000000)
          .removalListener(
              RemovalListeners.asynchronous(new CustomListener(), executorService)
          ).build();

1 个答案:

答案 0 :(得分:1)

如果doc位于代码的根文件夹中,则会将该文件添加到根驱动器中:

currentFolder.addFile(file);

然后代码中的这一行会删除刚刚创建的文件:

DriveApp.getRootFolder().removeFile(file);

为避免这种情况,请使用检查以查看doc是否位于根文件夹中:

var rootFolderID = DriveApp.getRootFolder().getId();

并与

进行比较
var folderId = parentFolder.next().getId();

类似的东西:

if (folderId != rootFolderID)
  {DriveApp.getRootFolder().removeFile(file);
}