Java: откройте почтовое приложение по умолчанию, создайте новую почту и заполните поля Кому и Тема - PullRequest
8 голосов
/ 01 марта 2010

Просто интересно, может ли кто-нибудь помочь мне с проблемой, с которой я столкнулся в Java.

Есть ли в Java функциональность для создания фрагмента кода, который откроет почтовое приложение по умолчанию на ПК пользователя? (Я думаю, что почти как необычная ссылка mailto ...)

Если есть - можно ли заполнить такие поля, как поля «Кому» и «Тема»?

Спасибо, Майк.

1 Ответ

20 голосов
/ 01 марта 2010

Desktop.mail (URI mailtoURI) - ваш друг!

Javadoc:

Запускает окно составления почты почтового клиента пользователя по умолчанию, заполняя поля сообщения, указанные в mailto: URI.

URI mailto: может указывать поля сообщения, включая «to», «cc», «subject», «body» и т. Д. См. Схема URL-адреса mailto (RFC 2368) для URI mailto: URI. детали спецификации.

Пример кода:

Desktop desktop;
if (Desktop.isDesktopSupported() 
    && (desktop = Desktop.getDesktop()).isSupported(Desktop.Action.MAIL)) {
  URI mailto = new URI("mailto:john@example.com?subject=Hello%20World");
  desktop.mail(mailto);
} else {
  // TODO fallback to some Runtime.exec(..) voodoo?
  throw new RuntimeException("desktop doesn't support mailto; mail is dead anyway ;)");
}
...