Gmail 中的附件。这是常规 Blob
,只不过它有一个额外的 getSize()
方法,该方法比调用
getBytes()
.length
,并且不计入 Gmail 读取配额。
// Logs information about any attachments in the first 100 inbox threads. var threads = GmailApp.getInboxThreads(0, 100); var msgs = GmailApp.getMessagesForThreads(threads); for (var i = 0 ; i < msgs.length; i++) { for (var j = 0; j < msgs[i].length; j++) { var attachments = msgs[i][j].getAttachments(); for (var k = 0; k < attachments.length; k++) { Logger.log('Message "%s" contains the attachment "%s" (%s bytes)', msgs[i][j].getSubject(), attachments[k].getName(), attachments[k].getSize()); } } }
方法
方法 | 返回类型 | 简介 |
---|---|---|
copyBlob() | Blob | 返回此 Blob 的副本。 |
getAs(contentType) | Blob | 将此对象中的数据作为转换为指定内容类型的 blob 返回。 |
getBytes() | Byte[] | 获取存储在此 blob 中的数据。 |
getContentType() | String | 获取此 blob 中字节的内容类型。 |
getDataAsString() | String | 获取此 Blob 的数据,作为采用 UTF-8 编码的字符串。 |
getDataAsString(charset) | String | 获取具有指定编码的字符串形式的此 blob 数据。 |
getHash() | String | 获取此附件的 SHA1 内容哈希。 |
getName() | String | 获取此 Blob 的名称。 |
getSize() | Integer | 获取该附件的大小。 |
isGoogleType() | Boolean | 返回此 Blob 是否为 Google Workspace 文件(表格、文档等)。 |
setBytes(data) | Blob | 设置此 blob 中存储的数据。 |
setContentType(contentType) | Blob | 设置此 blob 中字节的内容类型。 |
setContentTypeFromExtension() | Blob | 根据文件扩展名设置此 blob 中字节的内容。 |
setDataFromString(string) | Blob | 从采用 UTF-8 编码的字符串设置此 blob 的数据。 |
setDataFromString(string, charset) | Blob | 通过具有指定编码的字符串设置此 blob 的数据。 |
setName(name) | Blob | 设置此 Blob 的名称。 |
详细文档
copyBlob()
getAs(contentType)
将此对象中的数据作为转换为指定内容类型的 blob 返回。这个 方法会为文件名添加相应的扩展名,例如“myfile.pdf”。不过, 最后一个句点之后的文件名部分(如果有)假定存在 扩展名。因此,“ShoppingList.12.25.2014”会变为 “ShoppingList.12.25.pdf”。
要查看转化次数的每日配额,请参阅 Google 配额 服务。新创建的 Google Workspace 网域可能会暂时适用更严格的条件 配额。
参数
名称 | 类型 | 说明 |
---|---|---|
contentType | String | 要转换为的 MIME 类型。对于大多数 blob,'application/pdf' 为
唯一有效的选项对于 BMP、GIF、JPEG 或 PNG 格式的图片,'image/bmp' 、'image/gif' 、'image/jpeg' 或 'image/png' 中的任何一个也
有效。对于 Google 文档,'text/markdown' 也有效。 |
返回
Blob
- 以 blob 形式表示的数据。
getBytes()
获取存储在此 blob 中的数据。
返回
Byte[]
- 存储的字节数。
getContentType()
获取此 blob 中字节的内容类型。
返回
String
- 此数据的内容类型(如果已知)或 null
。
getDataAsString()
获取此 Blob 的数据,作为采用 UTF-8 编码的字符串。
返回
String
- 字符串形式的数据。
getDataAsString(charset)
获取具有指定编码的字符串形式的此 blob 数据。
参数
名称 | 类型 | 说明 |
---|---|---|
charset | String | 将此 blob 中的数据编码为字符串时使用的字符集。 |
返回
String
- 字符串形式的数据。
getHash()
获取此附件的 SHA1 内容哈希。此方法不会计入 Gmail 读取配额
返回
String
- SHA1 内容哈希(字符串形式)。
授权
使用此方法的脚本需要以下一个或多个范围或相关 REST API 的适当范围的授权:
-
https://mail.google.com/
getName()
获取此 Blob 的名称。
返回
String
- 此数据的名称(如果已知)或 null
。
getSize()
获取该附件的大小。此方法比调用 getBytes()
.length
速度更快,且不计入 Gmail 读取配额。
返回
Integer
- 附件的大小(以字节为单位)。
授权
使用此方法的脚本需要以下一个或多个范围或相关 REST API 的适当范围的授权:
-
https://mail.google.com/
isGoogleType()
返回此 Blob 是否为 Google Workspace 文件(表格、文档等)。
返回
Boolean
- true
(如果此 blob 是 Google Workspace 文件);否则为 false
。
setBytes(data)
setContentType(contentType)
setContentTypeFromExtension()
setDataFromString(string)
setDataFromString(string, charset)
通过具有指定编码的字符串设置此 blob 的数据。
参数
名称 | 类型 | 说明 |
---|---|---|
string | String | 字符串数据。 |
charset | String | 将字符串解释为字节时使用的字符集。 |
返回
Blob
- 此 blob,用于链接。