试图在特定文件夹中创建文件

时间:2017-04-24 14:23:59

标签: google-apps-script google-sheets google-drive-api

我希望有人可以帮我处理一些我可能会坚持的事情(可能很简单)。

我有一个基本脚本,它将电子表格的每一行输出为单独的文本文件。我使用createFile来做到这一点,到目前为止它工作得很好。除了 - 我只是不知道如何让Google Scripts将文本文件保存在特定文件夹中,只在根目录中保存。我设法得到的最接近的是创建一个文件夹,但即使这样我也无法将文件放入其中(当然,我不想每次都创建一个文件夹)。

我确信它是直截了当的,但我无法理解我在其他地方找到的任何例子。提前谢谢。

以下代码:

function processSheets() {
var sheet = SpreadsheetApp.openById("18QHevoo0TjldkjsbvljkhaljhbdFILdMNLIHEVrKsg");
SpreadsheetApp.setActiveSpreadsheet(sheet);
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();

var startRow = 1; // First row of data to process
var numRows = SpreadsheetApp.getActiveSpreadsheet().getLastRow() - 1; //Get number of rows, then use to set last row to fetch


// Fetch the range of those cells
var dataRange = sheet.getRange(startRow, 1, numRows, 2)
// Fetch values for each row in the range.
var data = dataRange.getValues();
for (i in data) {
    var row = data[i];
    var jobnumber = row[0]; // First column
    var jobname = row[1]; // Second column




    // Make friendly name by concatenating job number and job name with a space in between
    var friendlyname = jobnumber + " " + jobname


    // Create a text file with the job name as file name and content
    DriveApp.createFile(friendlyname, friendlyname);



}

}

1 个答案:

答案 0 :(得分:0)

如果您知道Google云端硬盘文件夹的ID:

function createFile(id) {
  var folder = DriveApp.getFolderById(id);
  folder.createFile(name, content);
}

如果您知道文件夹的名称而不知道名称。

function createFile(folderName) {
  var folder = DriveApp.getFoldersByName(folderName).getNext();
  folder.createFile(name, content);
}