小编Sam*_* Z.的帖子

javax.mail.internet.AddressException:域在字符串中包含非法字符

在尝试读取来自 Outlook 的电子邮件的电子邮件收件人时:

message.getRecipients(Message.RecipientType.TO)
Run Code Online (Sandbox Code Playgroud)

我收到以下异常:

Caused by: javax.mail.internet.AddressException: Domain contains illegal character in string ``'xxxxx@yyyyyy.com'''
  at javax.mail.internet.InternetAddress.checkAddress(InternetAddress.java:1269)
    at javax.mail.internet.InternetAddress.parse(InternetAddress.java:1091)
    at javax.mail.internet.InternetAddress.parseHeader(InternetAddress.java:658)
    at javax.mail.internet.MimeMessage.getAddressHeader(MimeMessage.java:701)
    at javax.mail.internet.MimeMessage.getRecipients(MimeMessage.java:534)
Run Code Online (Sandbox Code Playgroud)

问题由电子邮件地址开头和结尾的字符“'”给出。问题是,对于 Outlook 服务器,这是一个有效地址,但对于 MimeMessage 无效,因此当我尝试检索它并应用所有检查时,我收到了异常。

请注意,我不是在创建消息,我只是通过以下方式阅读 Outlook 收件箱文件夹中的任何内容:

Folder inbox = store.getFolder(.......);
messages = inbox.getMessages();
Run Code Online (Sandbox Code Playgroud)

知道如何解决/解决这个问题吗?

非常感谢山姆

outlook character

2
推荐指数
1
解决办法
3976
查看次数

标签 统计

character ×1

outlook ×1