我一直在使用 EWS Managed API for Java 在 Exchange 项目上做一些工作。
最近,我遇到了一个被RecipientRow
格式化为二进制属性的特定属性,它以字节数组的形式出现。我能够通过在数组中搜索特定的 MAPI 标记来挑选它并找到必要的属性,但现在我想知道目前是否有一个免费的 Java 库可以用来简化这个过程。
基本上,它只需要一些方便的方法/对象,它们围绕着一个大型的属性标签“映射”来键入和每个标签的其他属性(即0x1F000330
,是一个String
表示电子邮件地址并且是可变长度的属性)。一个极端的例子是使用该ExportItems
函数将整个 Exchange 对象转储为 base 64 编码字符串,然后为所有属性挑选它。我想任何旨在与 MAPI 接口或解析 Outlook 数据的东西都需要做这样的事情,但是代码可以免费获得吗?
我不是在谈论从 Exchange 中打开任何二进制流。这在很大程度上是 EWS 特有的,在这种情况下会请求任何二进制数据。RecipientRows
使用此标记方法进行处理,并且拥有标记、类型和其他属性的映射可以让您挑选 aRecipientRow
并处理值。
我认为这ExportItems
将遵循相同的格式,以标头信息和标志为前缀,然后提供大量二进制数据,其中包含标识特定值的标签。我可能会误会,因为我还没有尝试过使用ExportItems
(它没有内置在 EWS 托管 API 中,但 Exchange 支持它,所以我需要内置它),所以我不能肯定地说。但考虑到 Microsoft 用于多属性二进制值的结构,它在这种特殊情况下很可能是有效的。
当然,附件等需要以更通用的方式处理,但有关 Exchange 项目的信息(即约会的收件人、电子邮件的正文等)应该是可访问的。