Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

GASでZIP圧縮

Google Apps Script上ではZIP圧縮も可能です。
ファイル数が多くて面倒な時なんかは重宝しそうですね。

実際のところ

zip圧縮関数にはBlob形式のものを配列として渡してやればよいです。

  /* blob作成。ここは各々方のお好みで */
  var YOURDOMAIN = "YOURDOMAIN";
  var nowDate = Utilities.formatDate(new Date(), 'JST', 'yyyyMMdd');
  var doctype = "docx"; //pdf,docx,odt,txt
  var filename = nowDate + "." + doctype
  
  var fetchUrl = "https://docs.google.com/a/" + YOURDOMAIN + "/document/export?format=docx&id=" + docid;
  var newfile = UrlFetchApp.fetch(fetchUrl,fetchOpt).getBlob().setName(filename);

  /* zip圧縮。Blob配列の形式でわたす */
  var zipfile = Utilities.zip([newfile]);

解凍用のunzip関数もあります

  var unzipfiles = Utilities.unzip(zipfile);