ในกรณีส่วนใหญ่ อีเมลจะถูกส่งในรูปแบบเค้าโครงที่ดีตามเทมเพลตเฉพาะ อย่างไรก็ตาม โปรแกรมแก้ไขอีเมลต่างๆ ไม่มีตัวเลือกการจัดรูปแบบขั้นสูง ในกรณีเช่นนี้ คุณสามารถสร้างข้อความในเอกสาร Word และใช้เป็นเนื้อหาอีเมลได้ ในบทความนี้ คุณจะได้เรียนรู้วิธีส่งเอกสาร MS Word เป็นเนื้อหาอีเมลโดยใช้ Java
Java API เพื่อนำเข้าเอกสาร Word ในอีเมล
ในการนำเข้าและส่งเอกสาร Word ในเนื้อหาอีเมล เราจะใช้ประโยชน์จากความสามารถของ Aspose.Words for Java และ Aspose.Email for Java APIs แบบแรกจะใช้เพื่อบันทึกเอกสาร 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 ที่ใช้ในบทความได้โดยไปที่เอกสารต่อไปนี้