2010-12-11 76 views
0

我知道的JavaMail知道以下类型的IMAP文件夹的:什么是JavaMail文件夹类型3?

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

所以,今天我所做的:

int type = folder.getType(); 

一个名为“草稿”文件夹中,这应该是对类型2

但变量类型包含值3,这似乎不被随处记录。

3型是什么意思?

回答

4

从ApiDoc Folder.getType

返回该文件夹的类型,即 是,这个文件夹是否能够维持 消息或子文件夹或两者兼而有之。返回的值是一个整数位域 ,并设置了相应的位。

所以3只是在这种情况下2 + 1的结果,这意味着您的文件夹都是HOLDS_MESSAGES和HOLDS_FOLDERS。

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

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

等,不要使用==作为运营商。