получить необработанное содержимое (формат строки) MSG-файла Outlook в Java - PullRequest
0 голосов
/ 09 марта 2020

Я пытаюсь прочитать необработанное содержимое файла Outlook в формате MSG в приложении Java.

Я пытался использовать Apache POI HSMF, он хорошо работает для извлечения некоторых полей, но я потребуется получить точное содержание необработанного файла. Насколько я вижу, Apache POI не предоставляет такой функциональности.

С другой стороны, если я пытаюсь открыть файл .MSG (я думаю, что в двоичном формате) я не могу написать это в формате String.

У вас есть идеи, как я могу прочитать такой файл MSG и скопировать его содержимое в строку?

1 Ответ

0 голосов
/ 25 апреля 2020

Apache POI HSMF включает в себя инструменты, необходимые для извлечения тела, заголовка и вложений, как вы просили в своем комментарии. На самом деле тестовое приложение 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 изменить разделитель пути в classpath на «;»

...