Работа с элементами календаря в файле PST
Добавление MapiCalendar в PST
Создание нового PST, добавление подкаталогов и сообщений показало, как создать файл PST и добавить к нему подкаталог. С помощью Aspose.Email вы можете добавить MapiCalendar в подкаталог Календаря файла PST, который вы создали или загрузили.
Ниже приведены шаги для добавления MapiCalendar в PST:
- Создайте объект MapiCalendar.
- Установите свойства MapiCalendar с помощью конструктора и методов.
- Создайте PST с помощью метода PersonalStorage.create().
- Создайте предопределенную папку (Календарь) в корне файла PST, получив доступ к корневой папке и затем вызвав метод addMapiMessageItem().
Ниже приведен фрагмент кода, который показывает, как создать MapiCalendar и затем добавить его в папку Календаря только что созданного файла PST.
Сохранение элементов календаря из Outlook PST на диск в формате ICS
Эта статья показывает, как получить доступ к элементам календаря из файла Outlook PST и сохранить календарь на диск в формате ICS. Она использует классы PersonalStorage и MapiCalendar для получения информации о календаре.
Ниже приведены шаги для сохранения элементов календаря:
- Загрузите файл PST в классе PersonalStorage.
- Просмотрите папку Календаря.
- Получите содержимое папки Календаря, чтобы получить коллекцию сообщений.
- Пройдите по коллекции сообщений.
- Вызовите метод PersonalStorage.extractMessage() для получения информации о контакте в классе MapiCalendar.
- Вызовите метод MapiCalendar.save() для сохранения элемента календаря на диск в формате ICS.
В приведенной ниже программе загружается файл PST с диска и сохраняются все элементы календаря в формате ICS. Файлы ICS затем могут быть использованы в любой другой программе, которая может загружать стандартный файл календаря ICS. Если вы откроете любой файл ICS в Microsoft Outlook, он будет выглядеть как на приведенном ниже скриншоте.
Рисунок: Элемент календаря, сохраненный с помощью Aspose.Email |
Извлечение элементов календаря из файла PST
Класс MapiCalendar представляет элемент календаря в формате MAPI Microsoft Outlook. Извлеките сообщение из файла PST и преобразуйте его в элемент сообщения MAPI. Приведенный ниже код извлекает элемент календаря из файла PST и преобразует его в объект MapiCalendar для дальнейшей манипуляции или обработки:
MapiCalendar cal = (MapiCalendar) pst.extractMessage(messageInfo).toMapiMessageItem();
Сохранение элементов календаря в формате ICS с оригинальным временным штампом
Используйте приведенный выше фрагмент кода для извлечения элемента календаря из файла PST, а затем укажите дополнительные параметры для сохранения его как ICS с оригинальным временным штампом, используя метод setKeepOriginalDateTimeStamp класса MapiCalendarIcsSaveOptions:
MapiCalendar cal = (MapiCalendar) pst.extractMessage(messageInfo).toMapiMessageItem();
if (cal != null) {
MapiCalendarIcsSaveOptions so = new MapiCalendarIcsSaveOptions();
so.setKeepOriginalDateTimeStamp(true);
cal.save("cal.ics", so);
}