【问题标题】:how to generate json of google spreadsheet at specific folder in google drive using google app script?如何使用谷歌应用脚​​本在谷歌驱动器的特定文件夹中生成谷歌电子表格的 json?
【发布时间】:2015-03-14 16:01:06
【问题描述】:

我正在尝试在谷歌驱动器的特定文件夹中创建一个 json 的谷歌电子表格。

例如,我的谷歌驱动器有一个名为“temp”的文件夹,它包含谷歌电子表格,然后我从该电子表格运行谷歌应用脚​​本代码。

这里是代码

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);
};

上面的代码运行良好,但它总是在谷歌驱动器的根文件夹而不是临时文件夹中创建 json 文件。

任何人都可以解决上述问题吗?

【问题讨论】:

    标签: json google-apps-script google-sheets


    【解决方案1】:

    试试这个:

      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);
     }
    
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-08
      • 2012-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多