3

私は Java で IMAP アプリケーションに取り組んでおり、名前のない電子メール アドレスのみを取得したいと考えています。これが私が使用している関連コードです。

Message[] msg = folder.getMessages();
for (int i = 0; i < msg.length; i++)
{
  if (!msg[i].isSet(Flag.SEEN))
  {
    EmailSenderInfo emailSenderInfo = new EmailSenderInfo();                            
    String from = InternetAddress.toString(msg[i].getFrom());
  }
}

変数「from」を出力すると、以下のように出力されます

name <emailaddress@gmail.com>

名前なしでメールアドレスだけを取得するにはどうすればよいですか?

4

2 に答える 2

3

getFrom メソッドは、実際には InternetAddress オブジェクトである Address オブジェクトの配列を返します。通常、From アドレスは 1 つしかないため、配列の最初の要素だけを使用できます。次に InternetAddress.getAddress メソッドを使用します。

 InternetAddress ia = (InternetAddress)msg[i].getFrom()[0];
 String from = ia.getAddress();
于 2013-04-29T06:59:32.070 に答える