Google apps script 如何从具有文件夹结构的blob数组创建zip

Google apps script 如何从具有文件夹结构的blob数组创建zip,google-apps-script,google-drive-api,zip,directory-structure,Google Apps Script,Google Drive Api,Zip,Directory Structure,我了解了如何从一组blob创建一个zip,但是是否可以在zip本身中定义一个文件夹结构 例如。。archive/img/file1.jpg是的,尽管它并不明显 首先,重要的是要理解Google应用程序脚本中的对象与JavaScript的普通对象略有不同。最重要的区别是它们有一个名称,API的许多部分都使用这个名称。(包括Utilities.zip()) Utilities.zip()将blob上的名称视为路径名,因此只需包含斜杠即可构建整个层次结构: //Create a test blob v

我了解了如何从一组blob创建一个zip,但是是否可以在zip本身中定义一个文件夹结构


例如。。archive/img/file1.jpg

是的,尽管它并不明显

首先,重要的是要理解Google应用程序脚本中的对象与JavaScript的普通对象略有不同。最重要的区别是它们有一个名称,API的许多部分都使用这个名称。(包括Utilities.zip())

Utilities.zip()将blob上的名称视为路径名,因此只需包含斜杠即可构建整个层次结构:

//Create a test blob
var blob = Utilities.newBlob("My Data");
blob.setName("foo/bar.txt");
//Should be a zip containing a folder named "foo", which contains a file named "bar.txt", which has the contents "My Data"
var zipBlob = Utilities.zip([blob], "test.zip");