使用 Java 在 MS Exchange Server 上創建和刪除文件夾

Microsoft Exchange Server 將電子郵件保存在不同的文件夾中,例如收件箱、發件箱等。此外,它還允許您在預定義的文件夾中創建自己的文件夾或子文件夾。在某些情況下,您可能需要以編程方式在 Exchange Server 上創建自定義文件夾。為此,本文介紹瞭如何使用 Java 在 MS Exchange Server 上使用 EWS 創建或刪除文件夾或子文件夾。

用於在 MS Exchange 服務器上創建文件夾的 Java API

要使用 EWS 在 MS Exchange Server 上處理文件夾,我們將使用 Aspose.Email for Java。它是一個強大的 API,可以在 Java 應用程序中使用 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 中的 EWS 在 MS Exchange Server 上創建文件夾。

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

// 獲取收件箱 URI(在收件箱中創建文件夾)
String inbox = client.getMailboxInfo().getInboxUri();

// 指定文件夾名稱
String folderName1 = "EMAILNET-35054";

try {
	// 創建文件夾
	client.setUseSlashAsFolderSeparator(true);
	client.createFolder(inbox, folderName1);
} catch (Exception e) {
	// 做一點事
}

用 Java 在 MS Exchange Server 上創建子文件夾

要創建子文件夾,您首先需要檢查父文件夾是否存在。如果是,只需創建子文件夾,否則先創建父文件夾。以下步驟演示瞭如何使用 Java 在 MS Exchange Server 上創建子文件夾。

以下代碼示例顯示瞭如何使用 Java 在 MS Exchange Server 上創建子文件夾。

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

// 獲取收件箱 URI(在收件箱中創建文件夾)
String inbox = client.getMailboxInfo().getInboxUri();

// 指定文件夾名稱
String folderName1 = "EMAILNET-35054";

// 指定子文件夾名稱
String subFolderName = "2015";
String folderName2 = folderName1 + "/" + subFolderName;

try
{			
    // 創建文件夾
    client.setUseSlashAsFolderSeparator(true);
    if (!client.folderExists(inbox, folderName1))
    {
        // 創建文件夾
        client.createFolder(inbox, folderName1);
    }

    // 創建子文件夾
    client.createFolder(inbox, folderName2);
}
catch(Exception e)
{
    // 做一點事
}

在 Java 中刪除 MS Exchange Server 上的文件夾

以下是使用 Java 刪除 MS Exchange Server 上的文件夾的步驟。

以下代碼示例顯示瞭如何使用 Java 刪除 MS Exchange Server 上的文件夾。

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

// 獲取收件箱 URI(在收件箱中創建文件夾)
String inbox = client.getMailboxInfo().getInboxUri();

// 指定文件夾名稱
String folderName1 = "EMAILNET-35054";

ExchangeFolderInfo rootFolderInfo = null;

try
{			
	ExchangeFolderInfo[] referenceToRootFolderInfo = { rootFolderInfo };
	
	// 檢查文件夾是否存在
	boolean outRefCondition0 = client.folderExists(inbox, folderName1, /* out */ referenceToRootFolderInfo);
	rootFolderInfo = referenceToRootFolderInfo[0];

	if (outRefCondition0) {		        
	// 刪除文件夾
	client.deleteFolder(rootFolderInfo.getUri(), true);
	}
}
catch(Exception e)
{
    // 做一點事
}

獲取免費的 API 許可證

您可以獲得免費的臨時許可證,以在沒有評估限制的情況下使用 Aspose.Email for Java。

結論

在本文中,您了解瞭如何使用 Java 中的 EWS 使用 Microsoft Exchange Server 上的文件夾。您已經了解瞭如何使用 Java 以編程方式在 MS Exchange Server 上創建和刪除特定文件夾。此外,您可以從文檔中了解更多關於Aspose.Email for Java 的信息。如果您有任何疑問,可以將其發佈到我們的論壇

也可以看看