如何在java中打开带附件的默认邮件客户端(例如outlook)

我想在系统默认邮件客户端中打开一条新邮件,并在Java中包含一个附件。

我试过Desktop.mail(URI mailtoURI)但我不知道如何指定附件。

然后,我尝试了JavaMail。 它工作正常,但我无法打开默认的邮件客户端

如何从Java中调用默认邮件客户端,并指定附件?

我认为你不能。 Desktop.mail启动mailto处理程序。

mailto方案处理程序仅支持to,cc,subject和body。

由于mailto方案仅支持mime类型的text/plain ,因此它不支持任何附件。

见http://tools.ietf.org/search/rfc2368

似乎不可能以跨平台的方式整齐地做到这一点。

请参阅使用附件启动邮件客户端? 有关如何在Windows中执行此操作的说明

没有商定的标准可以为邮件添加附件,因此每个邮件客户端都会以不同的方式处理邮件。 这意味着不可能为每个可能的邮件客户端编写一个catch-all方法来执行此操作。