I've been working on an email generating program and I am able to generate an email that has either an attachment upon generation using
ProcessBuilder p=new ProcessBuilder("C:\\Program Files (x86)\\Microsoft Office\\Office16\\OUTLOOK.EXE","/a","C:\\BackupData.docx");
or a generated email with the recipient, subject, and body filled out using
URI msg = new URI("mailto", mailer+"&subject="+subject+"?body="+body, (String) null);
My issue is that I cannot figure out a way to generate an Outlook email that has both of these features. If there is some way to combine these to create an email with attachment, and populated subject & body, I would like to know how to do that.
new ProcessBuilder("C:\\Program Files (x86)\\Microsoft Office\\Office16\\OUTLOOK.EXE",
"/c", "ipm.note", // create new e-mail message
"/m", mailer + "?subject=" + subject + "&body=" + body, // set recipient, subject and body
"/a", "C:\\BackupData.docx"); // attach file
This will start Outlook, open a new e-mail with recipient, subject, and body populated and the file added as attachment.
Beware that in the strings subject
and body
the characters % " & / ? \\
have to be encoded using percent encoding .
You can open the system's email client using the desktop class.
Desktop.getDesktop().mail( new URI( "mailto:address@somewhere.com" ) )
According to these docs the command you need is
"path/to/Outlook.exe /c ipm.note /a \\"path/to/attachment\\""
Assemble this and run it via ProcessBuilder
Reference from:
to open outlook mail from java program and to attach file to the mail from directory
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.