我知道 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/