java - 用Java获取MSG Outlook文件的原始内容(字符串格式)

标签 java apache-poi msg

我正在尝试在 Java 应用程序中读取 .MSG Outlook 文件的原始内容。

我尝试使用 Apache POI HSMF,它可以很好地提取某些字段,但我需要获取确切的原始文件内容。据我所知 Apache POI 没有提供这样的功能。

另一方面,如果我尝试打开 .MSG 文件(我认为是二进制格式),我无法将其写入字符串格式。

你知道我如何读取这样的消息文件并将其内容复制到字符串中吗?

最佳答案

Apache POI HSMF 包含您在评论中请求的提取正文、 header 和附件所需的工具。事实上,HSMF测试应用程序org.apache.poi.hsmf.extractor.OutlookTextExtractor获取“收件人”、“发件人”、“主题”和“正文”。它甚至包括遍历标题和附件的代码,您只需修改它即可显示完整的标题并将附件内容写入新文件。

要运行它,请下载以下 jar 文件:

  • poi-scratchpad-4.1.2.jar
  • poi-4.1.2.jar
  • commons-math3-3.6.1.jar

并通过以下方式运行(在 Windows 上)

java -cp "poi-scratchpad-4.1.2.jar;poi-4.1.2.jar;commons-math3-3.6.1.jar"  org.apache.poi.hsmf.extractor.OutlookTextExtractor msg-file

在 Linux 上,将类路径中的路径分隔符更改为“;”

关于java - 用Java获取MSG Outlook文件的原始内容(字符串格式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60602971/

相关文章:

java - Eclipse Java 中的 Scala 对象嵌套类

java - 200万以内的所有质数之和

java - 在 Apache POI 中创建 CellStyle 库

excel - Apache poi setformula 不适用于 SE

css - ".msg"字体颜色在 Mac 和 Windows 上不同

excel - 无法打开 .msg 文件

java - ClassNotFoundException:在全新项目中未找到类 "package.MainActivity"

java - 您可以在启动时从 Tomcat 打开 ServerSocket 吗?

java - 使用java代码读取excel表格

python - 如何在Python中读取电子邮件的互联网标题?