如何以跨平台方式打开带有主题和正文的默认邮件程序?
问题内容:
如何以跨平台方式打开带有主题和正文的默认邮件程序?
不幸的是,这是针对用Java编写的客户端应用程序,而不是网站。
我希望它可以跨平台的方式工作(这意味着Windows和Mac,对不起Linux)。我很高兴在Windows中执行VBScript,在OS
X中执行AppleScript。但是我不知道这些脚本应该包含什么。我想执行用户的默认程序,而不是仅搜索Outlook或其他内容。
在OS X中,我尝试执行以下命令:
open mailto:?subject=MySubject&body=TheBody
需要使用网址转义符将替换为%20
。
已更新 在Windows上,您必须玩各种游戏才能start
正确运行。这是正确的Java咒语:
class Win32 extends OS {
public void email(String subject, String body) throws Exception {
String cmd = "cmd.exe /c start \"\" \"" + formatMailto(subject, body) + "\"";
Runtime.getRuntime().exec(cmd);
}
}
问题答案:
在Java 1.6中,您有一种标准的方法可以打开平台的默认邮件程序:
Desktop.mail(URI)方法。URI可用于设置邮件的所有字段(发件人,收件人,正文,主题)。您可以在Java
SE
6中使用桌面API
上查看
Java
1.6中桌面集成的完整示例。