JavaxMail-Message只从getFrom()获取邮件

JavaxMail-Message只从getFrom()获取邮件,java,jakarta-mail,Java,Jakarta Mail,我有这个密码 Address[] from = message.getFrom(); System.out.println(from[0]); 其中打印:AuthorName或name@domain-取决于邮件 我怎样才能得到name@domain一直以来,没有AuthorName?地址是抽象的,指向两个派生类,一个是新闻类,另一个是不太有用的名称InternetAddress(我猜那时互联网上没有新闻) 在这种情况下,您可能会得到一个InternetAddress,它的方法似乎可以满足您的需

我有这个密码

Address[] from = message.getFrom();
System.out.println(from[0]);
其中打印:
AuthorName
name@domain
-取决于邮件


我怎样才能得到
name@domain
一直以来,没有
AuthorName

地址是抽象的,指向两个派生类,一个是新闻类,另一个是不太有用的名称
InternetAddress
(我猜那时互联网上没有新闻)

在这种情况下,您可能会得到一个
InternetAddress
,它的方法似乎可以满足您的需要。因此,将返回的地址强制转换为
InternetAddress
,并获取电子邮件地址:

Address[]from=message.getFrom();
InternetAddress ia=(InternetAddress)来自[0];
System.out.println(ia.getAddress());
您可以尝试不使用an,而是使用其子类an,它区分个人姓名和实际电子邮件地址。