将电子表格导出为pdf,然后将文件保存在谷歌驱动器中

jas*_*son 3 google-apps-script

将google电子表格打印到pdf后,我在保存到谷歌驱动器时遇到问题.如果我只是将"printurl"字符串放入浏览器,它会自动给我文件.但我希望它能自动保存到谷歌驱动器.我通过借用其他帖子中的代码来尝试此代码,这些帖子将电子表格通过电子邮件发送为PDF格式.但这会产生无法打开的pdf.我究竟做错了什么?

function printpdf() {
var spreadsheet_id="0Aiy1DTQRndx6dDRidXoxNzlXZFhxd2FITTlBbnUybnc";
var settings = '&fitw=true&portrait=false&exportFormat=pdf&gid=0&gridlines=false';
var printurl = 'https://spreadsheets.google.com/feeds/download/spreadsheets/Export?   key=' + spreadsheet_id + settings;
var result=UrlFetchApp.fetch(printurl);
var content=result.getContent();
var file=DocsList.createFile("temp",content,"application/pdf");
}
Run Code Online (Sandbox Code Playgroud)

以下是新oauth2格式下此问题的更新.

将电子表格打印为PDF,然后使用OAuth2将文件保存在云端硬盘中

Sri*_*rik 6

你可以用更简单的方式做到这一点

function printpdf(){

  var spreadsheet_id="0Aiy1DTQRndx6dDRidXoxNzlXZFhxd2FITTlBbnUybnc";
  var spreadsheetFile = DocsList.getFileById(spreadsheet_id); 
  var blob = spreadsheetFile.getAs('application/pdf'); 
  DocsList.createFile(blob);
}
Run Code Online (Sandbox Code Playgroud)

请注意,DocsList.createFile(blob)仅适用于Google Apps帐户.