У більшості випадків електронні листи надсилаються в добре відформатованому вигляді за певним шаблоном. Однак різні редактори електронної пошти не надають розширених параметрів форматування. У таких випадках ви можете створити повідомлення в документі Word і використовувати його як тіло електронної пошти. У цій статті ви дізнаєтеся, як надіслати документ MS Word як тіло електронної пошти за допомогою Java.
- Java API для імпорту документа Word електронною поштою
- Надішліть документ Word у тексті електронної пошти
- Отримайте безкоштовну ліцензію API
Java API для імпорту документа Word електронною поштою
Щоб імпортувати та надіслати документ Word у тілі електронної пошти, ми скористаємося можливостями API Aspose.Words for Java та Aspose.Email for Java. Перший використовуватиметься для збереження документа Word у форматі MHTML, тоді як другий використовуватиметься для створення та надсилання електронного листа. Ви можете завантажити API з наступних розділів або встановити їх за допомогою конфігурацій Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-words</artifactId>
<version>21.4</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>21.3</version>
<classifier>jdk16</classifier>
</dependency>
Надішліть документ Word у тексті електронної пошти за допомогою Java
Нижче наведено кроки для імпорту та надсилання документа Word у тілі електронної пошти.
- Завантажте документ Word за допомогою класу com.aspose.words.Document.
- Створіть екземпляр класу ByteArrayOutputStream.
- Збережіть документ Word як MHTML в об’єкті ByteArrayOutputStream.
- Завантажте MHTML в об’єкт ByteArrayInputStream.
- Створіть екземпляр класу com.aspose.email.MailMessage і завантажте MHTML, збережений в об’єкті ByteArrayInputStream.
- Установіть такі поля електронної пошти, як Кому, Від, Тема тощо.
- Створіть екземпляр класу com.aspose.email.SmtpClient.
- Встановіть хост і надішліть електронний лист за допомогою методу SmtpClient.send(MailMessage).
У наведеному нижче прикладі коду показано, як надіслати документ Word як тіло електронної пошти.
// Завантажте документ
Document doc = new Document("Document.doc");
// Зберегти у вихідний потік у форматі MHTML.
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
doc.save(outputStream, SaveFormat.MHTML);
// Завантажте потік MHTML назад у вхідний потік для використання з Aspose.Email.
ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray());
// Створіть повідомлення електронної пошти Aspose.Email MIME з потоку.
MailMessage message = MailMessage.load(inputStream);
message.setFrom(new MailAddress("your_from@email.com"));
message.getTo().add("your_to@email.com");
message.setSubject("Aspose.Words + Aspose.Email MHTML Test Message");
// Збережіть повідомлення у форматі Outlook MSG.
message.save("Message.msg", SaveOptions.getDefaultMsg());
// Надішліть повідомлення за допомогою Aspose.Email
SmtpClient client = new SmtpClient();
client.setHost("your_smtp.com");
client.send(message);
Отримайте безкоштовну ліцензію API
Ви можете випробувати API, використані в цій статті, без обмежень щодо оцінювання, отримавши безкоштовну тимчасову ліцензію.
Висновок
У цій статті ви дізналися, як імпортувати та надсилати документ Word як текст електронної пошти за допомогою Java. Крім того, у зразку коду показано, як надіслати електронний лист, складений із документа Word, за допомогою клієнта SMTP. Ви можете дізнатися більше про API, які використовуються в цій статті, відвідавши наступну документацію.