如何使用 google 应用程序脚本在 google 驱动器中的特定文件夹中生成 google 电子表格?
how to generate json of google spreadsheet at specific folder in google drive using google app script?
我正在尝试在 google 驱动器的特定文件夹中创建 json 个 google 电子表格。
例如,我的 google 驱动器有一个名为 "temp" 的文件夹,它包含 google 电子表格,然后我是 运行 google 来自该电子表格的应用程序脚本代码.
这是代码
function exportSheetAsJSON()
{
var sheet = SpreadsheetApp.getActiveSheet();
var rows = sheet.getDataRange();
var numRows = rows.getNumRows();
var numCols = rows.getNumColumns();
var values = rows.getValues();
var output = "";
output += "{\""+sheet.getName()+"\" : {\n";
var header = values[0];
for (var i = 1; i < numRows; i++)
{
if (i > 1) output += " , \n";
var row = values[i];
output += "\""+row[0]+"\" : {";
for (var a = 1;a<numCols;a++)
{
if (a > 1) output += " , ";
output += "\""+header[a]+"\" : \""+row[a]+"\"";
}
output += "}";
//Logger.log(row);
}
output += "\n}}";
Logger.log(output);
DriveApp.createFile(sheet.getName()+".json", output, MimeType.PLAIN_TEXT);
};
上面的代码完美运行,但它总是在 google 驱动器的根文件夹而不是临时文件夹中创建 json 文件。
任何人都可以解决上述问题吗?
试试这个:
Logger.log(output);
var theFolder = DriveApp.getFoldersByName('temp');
while (theFolder.hasNext()) {
var folder = theFolder.next();
Logger.log(folder.getName());
folder.createFile(sheet.getName()+".json", output, MimeType.PLAIN_TEXT);
}
};
我正在尝试在 google 驱动器的特定文件夹中创建 json 个 google 电子表格。
例如,我的 google 驱动器有一个名为 "temp" 的文件夹,它包含 google 电子表格,然后我是 运行 google 来自该电子表格的应用程序脚本代码.
这是代码
function exportSheetAsJSON()
{
var sheet = SpreadsheetApp.getActiveSheet();
var rows = sheet.getDataRange();
var numRows = rows.getNumRows();
var numCols = rows.getNumColumns();
var values = rows.getValues();
var output = "";
output += "{\""+sheet.getName()+"\" : {\n";
var header = values[0];
for (var i = 1; i < numRows; i++)
{
if (i > 1) output += " , \n";
var row = values[i];
output += "\""+row[0]+"\" : {";
for (var a = 1;a<numCols;a++)
{
if (a > 1) output += " , ";
output += "\""+header[a]+"\" : \""+row[a]+"\"";
}
output += "}";
//Logger.log(row);
}
output += "\n}}";
Logger.log(output);
DriveApp.createFile(sheet.getName()+".json", output, MimeType.PLAIN_TEXT);
};
上面的代码完美运行,但它总是在 google 驱动器的根文件夹而不是临时文件夹中创建 json 文件。
任何人都可以解决上述问题吗?
试试这个:
Logger.log(output);
var theFolder = DriveApp.getFoldersByName('temp');
while (theFolder.hasNext()) {
var folder = theFolder.next();
Logger.log(folder.getName());
folder.createFile(sheet.getName()+".json", output, MimeType.PLAIN_TEXT);
}
};