
OLM Microsoft Outlook for Mac’in yerel verileri depolamak için kullandığı bir dosya formatıdır. OLM, e-postalar, ekler, notlar, takvim verileri, kişiler, görevler, geçmiş vb. gibi yerel verileri içerir. OLM dosyaları, Outlook for Mac tarafından kullanılır. Outlook for Windows, bu dosyalara erişemez veya açamaz. Outlook for Windows sürümü, verileri depolamak için yalnızca PST dosya formatını destekler. Bu makalede C# uygulamalarından OLM formatındaki dosyaları nasıl açıp okuyacağımızı ele alacağız.
- C# .NET OLM Dosyalarını Okuma API’si
- OLM formatındaki dosyaların açılması
- Klasörleri alma
- E-posta listesi
- E-postaları çıkarma
C# .NET OLM Dosyalarını Okuma API’si
Aspose.Email for .NET, e-posta uygulamalarını uygulamak için bir dizi özellik sunan güçlü bir API’dir. Ayrıca, OLM dosyalarını ve MBOX, PST/OST gibi diğer e-posta depolama formatlarını okumaya olanak tanır. Kitaplığı NuGet üzerinden kurabilir veya DLL’sini indirebilirsiniz.
PM> Install-Package Aspose.Email
OLM formatındaki dosyaların açılması
Aspose.Email API, OLM formatındaki dosyaları açmanın iki yolunu sunar:
Bu yöntemler arasında davranış farklılıkları vardır. Aşağıdaki bölüme bakın.
Yapıcı ile dosya açma
Bir dosya açmak için, OlmStorage sınıfının yapıcısını çağırmalı ve tam dosya adını veya akışı bir argüman olarak geçmelisiniz:
FromFile statik yöntemi kullanarak dosya açma
Dosyayı açmak için, statik FromFile yöntemini kullanmalı ve tam dosya adını veya akışı bir argüman olarak geçmelisiniz:
Klasörleri alma
Yapıcı kullanarak dosyayı açtıktan sonra, FolderHierarchy özelliğine erişilebilir. Bu, OLM dosyasında mevcut olan dizinlerin bir listesini döndürür. Liste içindeki her OlmFolder nesnesinin SubFolders özelliği vardır ve bu da alt klasörlerin bir listesini döndürür. Böylece OLM’deki tüm dizinlere erişimimiz olur.
Aşağıdaki örnek, tüm klasörlerin hiyerarşik sırayla listesini gösterir:
FromFile yöntemini kullanarak dosyayı açıyorsanız, varsayılan olarak FolderHierarchy özelliği başlatılmayacak ve null
döndürecektir. Bu durumda, açıkça GetFolders yöntemini çağırmak gereklidir:
Ayrıca, herhangi bir klasörü adıyla almak mümkündür. Bunu yapmak için:
GetFolder yöntemini çağırın
klasör adını birinci argüman olarak ve bir klasörü ararken büyük/küçük harf duyarlılığını göz ardı edip etmeyeceğinizi ikinci parametre olarak geçin.
E-posta listesi
OlmFolder sınıfı, klasörün e-posta listesini almak için aşağıdaki yöntemlere sahiptir:
EnumerateMessages, bir klasördeki e-postaları yinelemeyi uygular. Bu durumda, her yineleme OlmMessageInfo nesnesini döndürür ve bu nesne, e-posta hakkında kısa bir bilgi sağlar.
EnumerateMapiMessages de bir klasördeki e-postaları yinelemeyi uygular, ancak bu durumda, her yineleme MapiMessage nesnesini döndürür ve bu nesne e-postayı, tüm özellikleriyle temsil eder.
EnumerateMessages yöntemini kullanma
EnumerateMapiMessages yöntemini kullanma
Diğer yararlı özellikler
Ayrıca, OlmFolder sınıfı, klasördeki mesajların varlığını ve sayısını döndüren HasMessages ve MessageCount özelliklerine sahiptir:
E-postaları çıkarma
OlmStorage sınıfı, e-posta çıkarmayı sağlayan ExtractMapiMessage yöntemine sahiptir. Bu yöntem, bir OlmMessageInfo nesnesi alır.
Sonuç
Bu makalede, C# ile OLM dosyalarını nasıl okuyacağınızı öğrendiniz. Klasörlerin listesini almanın ve OLM dosyasından mesajları çıkarmanın yollarını gördünüz. Ayrıca, Aspose.Email for .NET hakkında daha fazla bilgi edinmek için belgelere göz atabilirsiniz. Sorularınızı veya isteklerinizi bizim forumda paylaşabilirsiniz.