In diesem kurzen Thema erfahren Sie, wie Sie Word Document mit Java per E-Mail senden. Sie können die Quelldatei einfach in das MHTML-Format konvertieren und die E-Mail-Einstellungen zum Versenden der E-Mail in jedem gängigen Betriebssystem wie MS Windows, Ubuntu oder macOS mit einfachen API-Aufrufen festlegen.
Schritte zum Senden von Word-Dokumenten per E-Mail mit Java
- Fügen Sie Aspose.Words und Aspose.Email JAR-Dateireferenz aus dem Maven-Repository hinzu
- Instanziieren Sie ein Document Class-Objekt, um das Eingabedokument zum Senden von E-Mails zu laden
- Geben Sie verschiedene SaveOptions an, um eine Datei im MHTML-Format zu speichern, um Daten in einem Stream zu speichern
- Laden Sie die Datei mithilfe der MailMessage-Klasse
- Initialisieren Sie den SMTP-Client, um die E-Mail-Nachricht zu konfigurieren
- Senden Sie eine E-Mail-Nachricht, die das Word-Dokument enthält
In diesen Schritten laden wir zunächst das eingegebene Word-Dokument im DOCX- oder DOC-Dateiformat. Dann wird es mithilfe des Stream-Objekts in eine MHTML-Datei konvertiert, die als Eingabedatei zum Senden der E-Mail geladen wird. Schließlich geben wir die Konfigurationseigenschaften wie Absender, Betreff, Port an, um die E-Mail-Nachricht zu senden.
Code zum Senden von DOCX in E-Mail mit Java
import com.aspose.words.Document; | |
import com.aspose.words.License; | |
import com.aspose.words.SaveFormat; | |
import com.aspose.email.MailMessage; | |
import com.aspose.email.SmtpClient; | |
import com.aspose.email.SecurityOptions; | |
public class SendWordocumentInEmailJava { | |
public static void main(String[] args) throws Exception { // main method for sending word document in email using Java | |
// Set Aspose.Words license before converting sending word document in email using Java | |
License WordLicense = new License(); | |
WordLicense.setLicense("Aspose.Word.lic"); | |
License EmailLicense = new EmailLicense(); | |
EmailLicense.setLicense("Aspose.Email.lic"); | |
// Load the document for sending as email using Document class | |
Document EmaiDocument = new Document("EmailTest.docx"); | |
SaveOptions options = null; | |
options.setSaveFormat(SaveFormat.MHTML); | |
// Convert the document to MHTML format by using memory stream | |
ByteArrayOutputStream EmailStream = new ByteArrayOutputStream(); | |
EmaiDocument.save(EmailStream, options); | |
ByteArrayInputStream stream = new ByteArrayInputStream(EmailStream.toByteArray()); | |
// Create an Aspose.Email message from the saved stream | |
com.aspose.email.MailMessage EmailMessage = | |
com.aspose.email.MailMessage.load(stream, new com.aspose.email.MhtmlLoadOptions()); | |
// Set properties of email to send | |
EmailMessage.setFrom(com.aspose.email.MailAddress.to_MailAddress("sender@sender.com")); | |
EmailMessage.getTo().add("your_to_email@email.com"); | |
EmailMessage.setSubject("Test Message for testing Aspose.Words and Aspose.Email APIs"); | |
// Initialize SMTP client and it's properties to send email | |
SmtpClient SMTPClient = new SmtpClient(); | |
SMTPClient.setHost("smtp.gmail.com"); | |
SMTPClient.setUsername("YourEmail@gmail.com"); | |
SMTPClient.setPassword("Your Gamil Password"); | |
SMTPClient.setPort(587); | |
SMTPClient.setSecurityOptions(SSLExplicit); | |
// Send word email message | |
SMTPClient.send(EmailMessage); | |
} | |
} |
Im obigen Code-Snippet haben wir die Quell-DOCX-Datei geladen, während wir ein Objekt der Document-Klasse verwendet haben. Es wird dann mithilfe von Streams in eine MHTML-Datei konvertiert, die später von Aspose.Email verarbeitet werden soll. Dann legen wir verschiedene Einstellungen für das Senden der E-Mail-Nachricht fest, z. B. E-Mail an, E-Mail von, Betreff und Hosteinstellungen, um die Eigenschaften der E-Mail-Nachricht zu steuern. Dadurch können Sie die E-Mail-Sendefunktion automatisieren und Dokumente per E-Mail mit Java senden.
Zuvor haben wir von wie man Word mit Java in Markdown umwandelt erfahren. Während wir uns in diesem Thema auf das Rendern von DOCX in TIFF konzentriert haben. Während wir in diesem Thema gelernt haben, wie Sie Java Word-Dokument per E-Mail senden verwenden.