电子邮件分发列表使向一群人发送电子邮件成为可能,而无需编写单独的电子邮件地址。您可以根据人员类型(例如官方、社交等)创建多个列表。MS Outlook 还允许您制作分发列表,并且您通常可能需要以编程方式创建此类列表。因此,让我们看看如何在 Java 中以编程方式创建和读取 MS Outlook 分发列表。
用于创建 MS Outlook 分发列表的 Java API
Aspose.Email for Java 是一个很棒的处理电子邮件的 API。它允许您创建、发送和处理电子邮件,并与包括 MS Outlook 在内的各种电子邮件客户端一起工作。我们将使用此 API 来创建和阅读本文中的 Outlook 分发列表。您可以 下载 API 或使用以下 Maven 配置安装它。
存储库:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
依赖:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>22.3</version>
<classifier>jdk16</classifier>
</dependency>
用 Java 在 MS Outlook 中创建分发列表
MS Outlook 使用 PST 格式存储有关分发列表的信息。让我们看看如何使用 Aspose.Email for Java 在 MS Outlook 中以编程方式创建分发列表。
- 首先,创建字符串对象来存储成员的详细信息。
- 然后,使用 PersonalStorage.create() 方法创建一个 PST 文件来存储分发列表。
- 之后,使用 PersonalStorage.createPredefinedFolder() 方法在 PST 中创建一个新文件夹并设置其名称。
- 然后,为每个成员创建一个 MapiDistributionListMember 对象并对其进行初始化。
- 创建一个新的 MapiDistributionListMemberCollection 对象并向其添加成员。
- 将集合分配给 MapiDistributionList 对象。
- 最后,使用 FolderInfo.addMapiMessageItem() 方法将分发列表添加到 PST 的文件夹中。
以下代码示例显示了如何在 Java 中创建 MS Outlook 分发列表。
String dataDir = "outlook/";
String displayName1 = "Sebastian Wright";
String email1 = "SebastianWright@dayrep.com";
String displayName2 = "Wichert Kroos";
String email2 = "WichertKroos@teleworm.us";
String strEntryId1;
String strEntryId2;
// 从联系人创建分发列表
try (PersonalStorage personalStorage = PersonalStorage.create(dataDir + "list.pst", FileFormatVersion.Unicode)) {
// 将联系人文件夹添加到 PST
FolderInfo contactFolder = personalStorage.createPredefinedFolder("Contacts", StandardIpmFolder.Contacts);
// 创建联系人
strEntryId1 = contactFolder.addMapiMessageItem(new MapiContact(displayName1, email1));
strEntryId2 = contactFolder.addMapiMessageItem(new MapiContact(displayName2, email2));
// 创建集合以保留成员
MapiDistributionListMember member1 = new MapiDistributionListMember(displayName1, email1);
member1.setEntryIdType(MapiDistributionListEntryIdType.Contact);
member1.setEntryId(Base64.getDecoder().decode(strEntryId1));
MapiDistributionListMember member2 = new MapiDistributionListMember(displayName2, email2);
member2.setEntryIdType(MapiDistributionListEntryIdType.Contact);
member2.setEntryId(Base64.getDecoder().decode(strEntryId2));
// 将成员添加到集合
MapiDistributionListMemberCollection members = new MapiDistributionListMemberCollection();
members.add(member1);
members.add(member2);
// 创建列表
MapiDistributionList distributionList = new MapiDistributionList("Contact list", members);
distributionList.setBody("Distribution List Body");
distributionList.setSubject("Sample Distribution List using Aspose.Email");
// 将分发列表添加到 PST
contactFolder.addMapiMessageItem(distributionList);
}
阅读 Java 中的 MS Outlook 分发列表
您还可以阅读 Outlook 通讯组列表并获取联系人信息。以下步骤显示了如何执行此操作。
- 使用 MapiMessage.load() 方法从 PST 文件加载分发列表。
- 使用 MapiMessage.toMapiMessageItem() 方法获取列表并将其转换为 MapiDistributionList。
- 从 MapiDistributionList 对象中读取联系人。
以下代码示例显示了如何在 Java 中读取 MS Outlook 分发列表。
// 加载 PST 文件
MapiMessage message = MapiMessage.load("list.pst");
// 获取分发列表
MapiDistributionList dlist = (MapiDistributionList)message.toMapiMessageItem();
// 获取会员收藏
MapiDistributionListMemberCollection members = dlist.getMembers();
// 从集合中读取每个 MapiDistributionListMember
MapiDistributionListMember member1 = members.get(0);
获取免费 API 许可证
您可以通过获得免费临时许可证 来使用 Aspose.Email for Java,而不受评估限制。
结论
MS Outlook 中的通讯组列表可让您向一组人发送电子邮件。在本文中,您学习了如何在 Java 中创建 MS Outlook 分发列表。此外,您还了解了如何以编程方式读取 Outlook 通讯组列表。此外,您可以使用 文档 探索更多关于 Java 电子邮件 API 的信息。此外,您可以在我们的 论坛 上发布您的问题或疑问。