Java:打开默认邮件应用程序并创建新邮件并填充“收件人”和“主题”字段

时间:2010-03-01 17:58:37

标签: java email uri default mailto

只是想知道是否有人可以帮助我解决我在Java中遇到的问题。

Java中是否有功能可以生成一段代码,用于打开用户PC上的默认电子邮件应用程序? (我猜几乎就像一个花哨的mailto链接...)

如果有 - 是否可以填充To和Subject字段等字段?

谢谢, 麦克

1 个答案:

答案 0 :(得分:20)

Desktop.mail(URI mailtoURI)是你的朋友!

的Javadoc:

  

启动用户默认邮件客户端的邮件撰写窗口,填写mailto:URI指定的邮件字段。

     

mailto:URI可以指定消息字段,包括“to”,“cc”,“subject”,“body”等。有关mailto:URI规范的详细信息,请参阅The mailto URL scheme (RFC 2368)

示例代码:

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 ;)");
}