【问题标题】:Google App Script read the file in a specific folderGoogle App Script 读取特定文件夹中的文件
【发布时间】:2020-03-05 02:11:42
【问题描述】:

如何在特定目录中读取具有名称的文件数据?我写的代码不行:不知道需要什么条件才能运行。

 function readFile() {
        var files = DriveApp.getFolderById('1YQKc_hJF6KuTjcAf77GunubNKKmm0Bfo').getFilesByName("the_file.txt");
        if (files.hasNext()) {
          var file = files.next();
          var Id = file.getId();
          Logger.log(Id);
        }
    }

【问题讨论】:

  • 感谢您的帮助。我的问题是错误的,因为我输入了站点驱动器 ID 您的建议是正确的,但我需要浏览目录并找到我需要的文件。这将比我目前的方法花费更长的时间
  • 它对我有用。我正在获取文件 ID,这就是您想要的吗?

标签: google-apps-script


【解决方案1】:

也许这个函数会有所帮助: 它提供了一个对话框,为您提供文件夹中所有文件的文件名、文件 ID 和文件类型。它有一个提示,您必须在其中输入文件夹 ID。

我自己用这个。我把它放在图书馆里。

function getFoldersFileInfo() {
  var resp=SpreadsheetApp.getUi().prompt("Folder Id","Enter Folder Id", SpreadsheetApp.getUi().ButtonSet.OK_CANCEL);
  if(resp.getSelectedButton()==SpreadsheetApp.getUi().Button.OK && resp.getResponseText().length>0) {
    try{
      var folder=DriveApp.getFolderById(resp.getResponseText());
      var files=folder.getFiles();
      var html='<style>td,th{border:1px solid black;padding:2px 5px;}</style><table><tr><th>File Name</th><th>File Id</th><th>Type</th></tr>';
      while(files.hasNext()) {
        var file=files.next();
        html+=Utilities.formatString('<tr><td>%s</td><td>%s</td><td>%s</td></tr>', file.getName(),file.getId(),file.getMimeType());
      }
      html+='</table><br /><input type="button" value="Close" onClick="google.script.host.close();" />';
      var userInterface=HtmlService.createHtmlOutput(html).setWidth(800).setHeight(400);
      SpreadsheetApp.getUi().showModelessDialog(userInterface, "Files in Folder: " + folder.getName());
    }
    catch(e){SpreadsheetApp.getUi().alert(e);}
  }else{
    SpreadsheetApp.getUi().alert("Invalid or Missing Inputs: No FileId Provided");
  }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-23
    • 1970-01-01
    • 2011-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多