Aspose.Email for Java 允許您使用 Microsoft Exchange Server 的服務,例如電子郵件、聯繫人管理、日曆等。在 上一篇文章 中,您已經看到如何從 Java 應用程序中以編程方式讀取來自 MS Exchange Server 的電子郵件。但是,在某些情況下,您可能必須將電子郵件從 Exchange Server 上的一個文件夾移動到另一個文件夾。在本文中,您將學習如何使用 Java 將電子郵件移動到 MS Exchange Server 上的特定文件夾。
- 用於在 Microsoft Exchange Server 上移動電子郵件的 Java API
- 將現有電子郵件移動到 MS Exchange Server 上的文件夾
- 將新電子郵件移動到 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 上特定文件夾的步驟。
- 首先,使用用戶名、密碼、域和 URI 初始化 IEWSClient 對象。
- 然後,使用 IEWSClient.listMessages(IEWSClient.getMailboxInfo().getInboxUri()) 方法獲取 ExchangeMessageInfoCollection 對像中的電子郵件列表。
- 之後,遍歷每個 ExchangeMessageInfo 消息並過濾所需的消息。
- 然後,使用 ExchangeMessageInfo.getUniqueUri() 方法獲取要移動的電子郵件的 URI。
- 最後,使用 IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()) 方法移動電子郵件。
以下代碼示例顯示瞭如何使用 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 中的特定文件夾。以下是執行此操作的步驟。
- 首先,使用用戶名、密碼、域和 URI 初始化 IEWSClient 對象。
- 然後,使用 MailMessage 類創建一條新消息。
- 之後,獲取 IEWSClient.appendMessage(MailMessage) 方法返回的電子郵件消息的 URI。
- 最後,使用 IEWSClient.copyItem(String URI, IEWSClient.getMailboxInfo().getOutboxUri()) 方法移動電子郵件。
以下代碼示例顯示如何將新電子郵件移動到 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 的更多信息。此外,您可以通過我們的 論壇 提問。