java - 什么是 JavaMail 文件夹类型 3?

标签 java imap jakarta-mail

我知道 JavaMail 知道以下类型的 IMAP 文件夹:

Folder.HOLDS_MESSAGES(等于常量 1) 和 Folder.HOLDS_FOLDERS(等于常量 2)。

所以,今天我做了:

int type = folder.getType();

位于名为“草稿”的文件夹中,该文件夹应为类型 2。

但是变量类型包含值 3,该值似乎没有在任何地方记录。

类型 3 是什么意思?

最佳答案

来自 ApiDoc Folder.getType :

Returns the type of this Folder, that is, whether this folder can hold messages or subfolders or both. The returned value is an integer bitfield with the appropriate bits set.

因此,在本例中,3 只是 2+1 的结果,这意味着您的文件夹同时包含 HOLDS_MESSAGES 和 HOLDS_FOLDERS。

记住:int 是一个位域。你必须像这样检查它:

 if ((folder.getType() & Folder.HOLDS_FOLDERS) != 0)

等,不要使用==作为运算符。

关于java - 什么是 JavaMail 文件夹类型 3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4416277/

相关文章:

email - IMAP - 获取上一个和下一个 UID

email - IMAP - 如何搜索对话线程中的所有消息?

Java邮件: Only one part of the message is retrieved/Parsing error/Badly formatted mail

java - 来自另一个类的 RadioButton setText

java - 在 Tekton Hub 的 Tekton Maven 任务中缓存 Maven 依赖项

php - 无法使用 PHP 从 AWS 读取 Gmail

java - 对于用户 id java.mail 抛出 'AUTHENTICATE failed.' ,但可以通过浏览器登录

java - xml 签名中的引用验证

java - 在play框架中调用webservice时出现NullPointer异常

java - 使用 javamail,gmail 由于应用程序安全性较低而拒绝身份验证