2017-04-24 58 views
0

我有一個Java應用程序,用於監視收件箱並讀取新郵件。我只想要讀取線程中的最新消息,但是當解析同一線程中具有多個回覆的電子郵件時,它會讀取整個內容。javax.mail分隔電子郵件線程

是否可以使用javax.mail只讀取電子郵件線程中的最新回覆?或者我需要放置一些邏輯來查看標題並通過比較發送日期來確定最新的內容?

回答

0

如果您在郵箱中爲每個回覆都有單獨的郵件,您必須決定如何確定它們是否屬於同一個「線索」。沒有完美的方式來做到這一點,不同的郵件程序會做不同的事情。一個好的開始是引用和In-Reply-To頭。一旦您知道屬於單個線程的消息集合,您可以選擇按日期最新的消息。

如果您有一封郵件包含郵件正文中以前回復的文本,並且您希望將最新回覆與以前的回覆分開,則必須處理正文中的文本並決定部分是以前的答覆,哪部分是當前的答覆。再次,沒有完美的解決方案,這將需要更多的啓發式。