gpt4 book ai didi

java - 使用 java-libpst 从 .pst 文件中提取电子邮件地址

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:22:46 24 4
gpt4 key购买 nike

我有几个 .pst 文件,需要所有邮件地址,我已将邮件发送到。该库的示例代码允许我遍历文件中的每封邮件,但我找不到合适的 getter 来提取收件人的邮件地址。

为了遍历每封邮件,我使用了这个网站的代码: https://code.google.com/p/java-libpst/

PSTMessage email = (PSTMessage) folder.getNextChild();
while (email != null) {
printDepth();
System.out.println("Email: " + email.getSubject());
printDepth();
System.out.println("Adress: " + email.getDisplayTo());
email = (PSTMessage) folder.getNextChild();
}

getDisplayTo() 方法只显示收件人姓名,不显示他们的邮件地址。我需要使用什么 getter 来获取地址?

最好的,迈克尔

最佳答案

第一种方法::可用的 getter

getSenderEmailAddress
getNumberOfRecipients
getRecipient(int)

第二种方法:解析header并收集email地址(a_sHeader为字符串)

    Session s = Session.getDefaultInstance(new Properties());
InputStream is = new ByteArrayInputStream(a_sHeader.getBytes());
try {
m_message = new MimeMessage(s, is);

m_message.getAllHeaderLines();
for (Enumeration<Header> e = m_message.getAllHeaders(); e.hasMoreElements();) {
Header h = e.nextElement();
// Recipients
if (h.getName().equalsIgnoreCase(getHeaderName(RecipientType.REC_TYPE_TO))) {
m_RecipientsTo = processAddresses(h.getValue());
}
...
}
} catch (MessagingException e1) {
...
}

关于java - 使用 java-libpst 从 .pst 文件中提取电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26817570/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com