
Різноманітні поштові клієнти та платформи часто призводять до створення різних форматів зберігання електронної пошти. З одного боку, ці формати можуть становити виклик під час парсингу вмісту. З іншого боку, вони незамінні для зберігання даних або їх відновлення у разі збою веб-сервісу. У цій статті ми розглянемо кожен з цих форматів і продемонструємо, як можна використовувати Aspose.Email для вилучення, переліку та відновлення вмісту електронної пошти п’яти основних форматів файлів.
C# API для обробки файлів зберігання
Для обробки файлів зберігання ми будемо використовувати універсальний API, розроблений для спрощення складних завдань та взаємодій, пов’язаних з електронною поштою, надаючи комплексне рішення для управління електронною поштою. Aspose.Email для .NET надає можливості розробникам створювати програми, які безперешкодно взаємодіють з даними електронної пошти в різних форматах, таких як PST, OST, MBOX, EML, MSG тощо. Завдяки своїм багатим можливостям та зручним методам маніпуляція, витяг та управління даними електронної пошти, що зберігаються у файлах, стає легким і інтуїтивно зрозумілим. Щоб скористатися можливостями API, завантажте його DLL або встановіть з NuGet, використовуючи наступну команду:
PM> Install-Package Aspose.Email
Обробка файлів зберігання різних типів форматів
Читання PST (особистої таблиці зберігання) файлів
PST — це формат файлу, який використовується Microsoft Outlook для зберігання електронних листів, контактів, календарів та інших даних. Aspose.Email спрощує роботу з файлами PST, надаючи методи для витягнення та отримання таких елементів, як електронні листи, вкладення та структури папок. Використовуючи бібліотеку, розробники можуть програмно отримувати вміст PST, шукати конкретні елементи та експортувати їх у різні формати. У наведеному нижче прикладі коду ви побачите, як читати файли у форматі PST:
- Для початку завантажте файл pst за допомогою методу FromFile класу PersonalStorage.
- Отримайте доступ до папки “Вхідні” у PST, використовуючи метод GetSubfolder() властивості RootFolder об’єкта pst.
- Переберіть кожне повідомлення у папці за допомогою методу EnumerateMessages() об’єкта папки.
- Витягніть повідомлення, використовуючи метод ExtractMessage() об’єкта pst, передаючи властивість EntryIdString кожного об’єкта msgInfo.
- Отримайте доступ до вмісту повідомлення:
- Отримайте тему повідомлення, використовуючи властивість Subject об’єкта msg.
- Отримайте адресу відправника повідомлення, використовуючи властивість SenderEmailAddress об’єкта msg.
- Отримайте текст повідомлення, використовуючи властивість Body об’єкта msg.
Читання OST (таблиці офлайн-зберігання Outlook) файлів
OST-файли служать офлайн-копією даних поштової скриньки з Microsoft Exchange. Aspose.Email дозволяє витягати дані з OST-файлів, що дозволяє розробникам отримувати електронні листи, папки та вкладення. Це особливо корисно при створенні рішень для резервного копіювання або міграції даних між різними платформами. Набір функцій, що використовується для парсингу OST-файлів, ідентичний тому, що використовується для PST, тому ви можете використовувати наведений вище приклад коду, вказуючи правильний шлях до OST-файлу.
Читання OLM (архіву Outlook для Mac) файлів
OLM — це формат зберігання, що використовується Microsoft Outlook для Mac для зберігання електронних листів, контактів та інших даних. З Aspose.Email розробники можуть витягувати вміст з OLM-файлів, включаючи електронні листи та вкладення. Ця функціональність є цінною для міграції даних між платформами або для створення систем резервного копіювання. Наступний приклад коду та етапи покажуть вам, як використовувати API для парсингу файлів Outlook для Mac:
- Створіть екземпляр класу OlmStorage та завантажте файл OLM за допомогою конструктора.
- Отримайте доступ до папки “Вхідні” в OLM, використовуючи метод GetFolder() об’єкта olm, передаючи ім’я папки “Вхідні” та вказуючи на необхідність створення папки, якщо вона не існує.
- Переберіть кожне повідомлення у папці за допомогою методу EnumerateMessages() об’єкта папки.
- Витягніть повідомлення, використовуючи метод ExtractMapiMessage() об’єкта olm, передаючи об’єкт msgInfo.
- Отримайте доступ до вмісту повідомлення:
- Отримайте тему повідомлення, використовуючи властивість Subject об’єкта msg.
- Отримайте адресу відправника повідомлення, використовуючи властивість SenderEmailAddress об’єкта msg.
- Отримайте текст повідомлення, використовуючи властивість Body об’єкта msg.
Читання MBOX (поштової скриньки) файлів
MBOX — це широко використовуваний формат для зберігання електронних листів. Його підтримують багато поштових клієнтів і платформ. Aspose.Email дозволяє витягувати та отримувати електронні листи та вкладення з MBOX-файлів, що дозволяє розробникам працювати з даними електронної пошти в програмному режимі. Спробуйте наступний фрагмент коду для парсингу файлів mbox:
- Завантажте файл MBOX, використовуючи метод CreateReader() класу MboxStorageReader з MboxLoadOptions.
- Переберіть кожне повідомлення у mbox, використовуючи метод EnumerateMessageInfo() об’єкта mbox.
- Витягніть вміст повідомлення з mbox, використовуючи метод ExtractMessage() об’єкта mbox, передаючи EntryId та EmlLoadOptions.
- Отримайте доступ до вмісту повідомлення:
Читання TGZ (сжатого архіву Tar) файлів
TGZ — це стиснутий архівний формат, який часто використовується для зберігання даних резервного копіювання електронної пошти в клієнті Zimbra. Aspose.Email дозволяє витягувати вміст електронної пошти з TGZ-файлів, що робить можливим доступ і маніпуляцію даними електронної пошти, що містяться в цих архівах. Наступний фрагмент коду та етапи покажуть вам, як читати tgz-файли:
- Створіть екземпляр класу TgzReader та завантажте файл TGZ за допомогою конструктора.
- Переберіть кожен елемент у папці “Вхідні”, використовуючи метод ReadNextMessage() об’єкта папки.
- Витягніть вміст повідомлення з кожного елемента, використовуючи властивість CurrentMessage.
- Виконайте бажані дії з витягнутим вмістом повідомлення.
Висновок
У цій статті ми розглянули, як програмно обробляти файли зберігання найпопулярніших форматів у C#. Наші інтуїтивні приклади коду показали, як реалізувати базові можливості у вашому проекті. Завантаження, перелік та доступ до вмісту файлів зберігання тепер простіше з Aspose.Email для .NET. API надає вам безперешкодний спосіб інтегрувати функціональність, пов’язану з електронною поштою, у свої .NET програми. Дізнайтеся більше про те, що може запропонувати бібліотека, з нашої документації. Не соромтеся звернутися до нас на нашому безкоштовному форумі підтримки, якщо вам потрібна допомога або порада.