我想获取我的电子邮件的 flagStatus 和 flagType(今天、明天、开始日期、截止日期等...)! 但我只得到flagstatus...
flagType 始终为 Null!!!! 请帮助我...
String flagged = null;
ConversationId conversationId = email.getConversationId();
if (conversationId != null) {
Collection<Conversation> conversations = email.getService().findConversation(new ConversationIndexedItemView(pageSize, offset), email.getParentFolderId());
for (Conversation conversation : conversations) {
if (conversation.getId().equals(conversationId)) {
flagged = conversation.getFlagStatus().toString();
break;
}
}
}
String flagType = null;
ExtendedPropertyDefinition taskFlagStatusProp = new ExtendedPropertyDefinition(
DefaultExtendedPropertySet.Common, 0x1090, MapiPropertyType.Integer);
List<ExtendedProperty> extendedProperties = item.getExtendedProperties().getItems();
for (ExtendedProperty property : extendedProperties) {
if (property.getPropertyDefinition().equals(taskFlagStatusProp)) {
int flagStatus = (Integer) property.getValue();
switch (flagStatus) {
case 1:
flagType = "Today";
break;
case 2:
flagType = "Tomorrow";
break;
case 3:
flagType = "This week";
break;
case 4:
flagType = "Nest week";
break;
default:
flagType = "NoDate";
}
break;
}
}
System.out.println(flagType);
这不是
PR_FLAG_STATUS
MAPI 属性的使用方式 - 它的唯一值是 0(无标志)、1(完整)、2(已标记)。当您标记今天/明天/下周的邮件时,Outlook 会设置日期/时间任务属性,例如 TaskDueDate
/TaskStartDate
/等(所有命名属性)。
使用 OutlookSpy 查看标记的消息(我是其作者) - 单击 IMessage 按钮,查看在您的情况下检索哪个属性有意义。