我想从Java应用程序中读取已保存的Outlook消息(.msg文件)中的文本和二进制附件,而不需要使用本机代码(JNI,Java Native Interface)。
Apache POI-HSMF似乎是在正确的方向,但它处于发展的早期阶段......
答案 0 :(得分:5)
msgparser是一个小型开源Java库,它解析Outlook .msg文件并使用Java对象提供其内容。 msgparser使用Apache POI - POIFS库来解析使用OLE 2复合文档格式的消息文件。
答案 1 :(得分:3)
您可以使用Apache POIFS 似乎有点成熟, 但这似乎与POI-HSMF的努力重复。
您可以使用POI-HSMF并提供更改以获取 你需要工作的功能。那是 通常FOSS项目如何扩展。
您 可以使用com4j,j-Interop或其他一些 其他COM级互操作功能和 直接与COM交互 提供访问权限的接口 结构化文件。那会 比试图击中要容易得多 直接通过JNI。
答案 2 :(得分:-1)
您是否尝试将Jython与Python win32扩展程序一起使用(http://www.jython.org/Project/ + http://python.net/crew/mhammond/win32/)? 如果这是一个“个人”或“内部”项目,使用Python的Jython可能是一个非常好的选择。如果您正在构建“收缩包装”软件包,这可能不是最佳选择。
答案 3 :(得分:-1)
Apache POI-HSMF。
您可以从以下链接中给出的示例开始。 http://svn.apache.org/viewvc/poi/trunk/src/scratchpad/examples/src/org/apache/poi/hsmf/examples/Msg2txt.java?revision=821500&view=markup&pathrev=821500
进一步阅读图书馆文档。