Сохранение сообщений из почтового ящика Exchange Server с использованием WebDav

Эта статья показывает, как получить сообщения из почтового ящика Exchange Server и сохранить их на диск в форматах EML и MSG.

Сохранить сообщения из почтового ящика Exchange Server в EML

Чтобы получить сообщения и сохранить их в формате EML:

  1. Создать экземпляр ExchangeClient класс.
  2. Укажите имя сервера, имя пользователя, пароль и домен.
  3. Вызвать ExchangeClient.listMessages() метод, чтобы получить экземпляр ExchangeMessagesInfoCollection коллекцию.
  4. Переберите ExchangeMessagesInfoCollection коллекцию, чтобы получить уникальный URI для каждого сообщения.
  5. Вызвать ExchangeClient.saveMessage() метод и передайте уникальный URI в качестве параметра.
  6. Предоставьте saveMessage() метод с путем к месту, где вы хотите сохранить файл.  

Сохранить сообщения в OutputStream

Вместо сохранения файлов EML на диск их можно сохранить в OutputStream. Это полезно, когда нужно сохранить поток в какое‑то хранилище, например базу данных. После сохранения потока в базе данных вы можете загрузить файл EML обратно в MailMessage класс.

Приведённые ниже фрагменты кода сохраняют сообщения из почтового ящика Exchange Server в поток памяти.

Сохранить сообщения в формате MSG

Этот ExchangeClient.saveMessage() метод может напрямую сохранять сообщение в формате EML. Чтобы сохранить сообщения в формате MSG, сначала вызовите ExchangeClient.fetchMessage() метод, который возвращает экземпляр MailMessage класс. Затем вызовите MailMessage.save() метод для сохранения сообщения в MSG.

Следующий фрагмент кода получает сообщения из почтового ящика Exchange Server и сохраняет их в формате MSG.