8

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

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

如果有 - 是否可以填充“收件人”和“主题”字段等字段?

谢谢,迈克。

4

1 回答 1

22

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

Java 文档:

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

mailto: URI 可以指定消息字段,包括“to”、“cc”、“subject”、“body”等。有关 mailto: URI 规范的详细信息,请参阅mailto URL 方案 (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 ;)");
}
于 2010-03-01T18:04:03.297 回答