用 Java 將電子郵件移動到 Microsoft Exchange Server 上的文件夾

Aspose.Email for Java 允許您使用 Microsoft Exchange Server 的服務,例如電子郵件、聯繫人管理、日曆等。在 上一篇文章 中,您已經看到如何從 Java 應用程序中以編程方式讀取來自 MS Exchange Server 的電子郵件。但是,在某些情況下,您可能必須將電子郵件從 Exchange Server 上的一個文件夾移動到另一個文件夾。在本文中,您將學習如何使用 Java 將電子郵件移動到 MS Exchange Server 上的特定文件夾。

用於在 Microsoft Exchange Server 上移動電子郵件的 Java API

Aspose.Email for Java 是一個功能強大的電子郵件 API,無需編寫複雜的代碼即可與 MS Exchange Server 一起工作。在本文中,我們將使用此 API 將電子郵件移動到 MS Exchange Server 中郵箱的特定文件夾。您可以 下載 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.2</version>
    <classifier>jdk16</classifier>
</dependency>

用 Java 將電子郵件移動到 MS Exchange Server 上的文件夾

以下是使用 Java 將電子郵件移動到 MS Exchange Server 上特定文件夾的步驟。

以下代碼示例顯示瞭如何使用 Java 將電子郵件移動到 MS Exchange Server 上的文件夾。

try {
	// 通過提供憑據創建 EWSClient 類的實例
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// 調用 ListMessages 方法列出收件箱中的消息信息
	ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());

	// 循環遍歷集合以獲取 Message URI
	for (ExchangeMessageInfo msgInfo : msgCollection) {
		if (msgInfo.getFrom().getAddress().contains("jhon.vick")) {
			String strMessageURI = msgInfo.getUniqueUri();

			// 複製到特定文件夾
			String newMessageUri = client.copyItem(strMessageURI, client.getMailboxInfo().getOutboxUri());
		}
	}
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

將新電子郵件移動到 MS Exchange Server 上的文件夾

您還可以將新創建的電子郵件移動到 MS Exchange Server 中的特定文件夾。以下是執行此操作的步驟。

以下代碼示例顯示如何將新電子郵件移動到 MS Exchange Server 中的文件夾。

try {
	// 通過提供憑據創建 EWSClient 類的實例
	IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser",
			"pwd", "domain");

	// 創建新消息
	MailMessage message = new MailMessage("from@domain.com", "to@domain.com",
			"EMAILNET-34997 - " + UUID.randomUUID().toString(),
			"EMAILNET-34997 Exchange: Copy a message and get reference to the new Copy item");

	// 獲取 URI
	String messageUri = client.appendMessage(message);

	// 移到文件夾
	String newMessageUri = client.copyItem(messageUri, client.getMailboxInfo().getDeletedItemsUri());
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

獲取免費的 API 許可證

你可以獲得一個免費的臨時許可來使用 Aspose.Email for Java,沒有評估限制。

結論

在本文中,您了解瞭如何使用 Java 將電子郵件移動到 Microsoft Exchange Server 中的特定文件夾。此外,您還了解瞭如何將新創建的電子郵件移動到 Exchange Server 中的特定文件夾。此外,您可以瀏覽 文檔 以閱讀有關 Aspose.Email for Java 的更多信息。此外,您可以通過我們的 論壇 提問。

也可以看看