什么';在Java中读取Outlook.msg文件的最佳库是什么?

什么';在Java中读取Outlook.msg文件的最佳库是什么?,java,outlook,msg,Java,Outlook,Msg,我想从Java应用程序中读取保存的Outlook邮件(.msg文件)中的文本和二进制附件,而不必求助于本机代码(JNI,Java本机接口) 看起来方向是对的,但它还处于发展的早期阶段 您可以使用ApachePOIFS 看起来更成熟一点, 但这似乎会重复POI-HSMF的努力 您可以使用POI-HSMF并贡献更改以获得 您需要使用的功能。那是 这样的自由和开放源码软件项目往往会扩大 你 可以使用com4j、j-Interop或其他 其他COM级互操作功能和 直接与COM进行交互 提供访问权限的接

我想从Java应用程序中读取保存的Outlook邮件(.msg文件)中的文本和二进制附件,而不必求助于本机代码(JNI,Java本机接口)

看起来方向是对的,但它还处于发展的早期阶段

  • 您可以使用ApachePOIFS 看起来更成熟一点, 但这似乎会重复POI-HSMF的努力

  • 您可以使用POI-HSMF并贡献更改以获得 您需要使用的功能。那是 这样的自由和开放源码软件项目往往会扩大

  • 你 可以使用com4j、j-Interop或其他 其他COM级互操作功能和 直接与COM进行交互 提供访问权限的接口 结构化文档。那会 比试着打它容易得多 直接通过JNI


您是否尝试将Jython与Python win32扩展(+)一起使用? 如果这是一个“个人”或“内部”项目,那么使用Python的Jython可能是一个非常好的选择。如果您正在构建“收缩包装”软件包,这可能不是最佳选择。

是一个小型开源Java库,它解析Outlook.msg文件并使用Java对象提供其内容。msgparser使用库解析使用OLE 2复合文档格式的消息文件

ApachePOI-HSMF

您可以从下面链接中给出的示例开始。


进一步阅读图书馆文档。

我非常喜欢Python/Jython,但我担心在这种情况下我将无法使用它(正是因为它不是个人/内部/玩具项目)。使用msgparser()的分支,并具有用于直接将Outlook消息读取到mimessage、Email或EML的API。