【问题标题】:When adding a file to a folder, how to make it not default save in Google Drive?将文件添加到文件夹时,如何使其不默认保存在 Google Drive 中?
【发布时间】:2013-02-09 01:54:12
【问题描述】:

在我的脚本中,我在主驱动器中有模板文档,但是当创建副本并使用我的 excel 数据填充时,我希望将其保存在驱动器中的文件夹中。我有脚本执行此操作,但它在主 Google 云端硬盘中有一个文件副本,另一个在我想要的文件夹中。如果我删除其中一个副本,它会同时删除两个副本。

有什么方法可以让它自动保存在指定的文件夹中,而不是在主驱动器文件夹中?

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    Google 驱动器中的文件夹与计算机中的文件夹不完全相同:将文件放在“根”文件夹和另一个文件夹中并不意味着有 2 个文件,而是 1 个且只有 2 个标签的文件...这就是为什么你不能在不删除另一个的情况下删除一个!

    解决方案是简单地在脚本中使用这些标签,这是它的工作原理:(我评论了每个步骤以使其清楚。)

    function othertest(){
    folder=DocsList.createFolder("MyFolder"); // or getFolderById or whatever other way to get your target folder
    var file=DocsList.createFile('File2', 'Empty');// just an empty file for test but this would be your file copy that you want to "move"
    file.addToFolder(folder);// put it in the folder
    file.removeFromFolder(DocsList.getRootFolder());// and remove from the root
    }
    

    另一个可能的解决方案是直接在目标文件夹中创建文件,因为文件夹对象支持createFile 方法。 (不确定您是否可以在您的特定用例中做到这一点)

    这里是一个例子,你可以看到文件不在根文件夹中。

    function createFileinFoldertest() {
       var folder = DocsList.getFolder('test')
       folder.createFile('Empty test fileName','nothing in there')
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多