Пример #1
0
        /// <summary>
        /// Shows how to retrieve an email from IMAP server using OpenEntityStream method
        /// </summary>
        public static void RetrieveEmailUsingOpenEntityStreamIMAP()
        {
            //ExStart:RetrieveEmailUsingOpenEntityStream
            // Create connection info

            var info = EmailConnectionInfo.CreateImapConnectionInfo(@"imap-mail.outlook.com", 995, "username", "password");

            // Create an email container
            using (var container = new EmailContainer(info))
            {
                // Iterate over emails
                foreach (var entity in container.Entities)
                {
                    // Create a stream with content of email
                    var stream = container.OpenEntityStream(entity); // or var stream = entity.OpenStream();
                    // Create a text extractor for email
                    using (var extractor = new EmailTextExtractor(stream))
                    {
                        // Extract all the text from email
                        Console.WriteLine(extractor.ExtractAll());
                    }
                }
            }
            //ExEnd:RetrieveEmailUsingOpenEntityStreamPOP3
        }
Пример #2
0
        /// <summary>
        /// Shows how to retrieve an email from Microsoft exchange server using OpenEntityStream method
        /// </summary>
        public static void RetrieveEmailUsingOpenEntityStream()
        {
            //ExStart:RetrieveEmailUsingOpenEntityStream
            // Create connection info

            var info = EmailConnectionInfo.CreateEwsConnectionInfo(@"https://outlook.office365.com/ews/exchange.asmx", "username", "password");

            // Create an email container
            using (var container = new EmailContainer(info))
            {
                // Iterate over emails
                foreach (var entity in container.Entities)
                {
                    // Create a stream with content of email
                    var stream = container.OpenEntityStream(entity); // or var stream = entity.OpenStream();
                                                                     // Create a text extractor for email
                    using (var extractor = new EmailTextExtractor(stream))
                    {
                        // Extract all the text from email
                        Console.WriteLine(extractor.ExtractAll());
                    }
                }
            }
            //ExEnd:RetrieveEmailUsingOpenEntityStream
        }
Пример #3
0
        /// <summary>
        /// Extracts from OST(pst) container with improved memory consumption
        /// </summary>
        public static void ExtractTextFromOstContainer2(string fileName)
        {
            //ExStart:ExtractTextFromOstContainer2_18.2
            var container  = new PersonalStorageContainer(Common.GetFilePath(fileName));
            var enumerator = container.Entities.GetEnumerator();

            while (enumerator.MoveNext())
            {
                var entity = enumerator.Current;
                using (var entityStream = entity.OpenStream())
                {
                    using (var extractor = new EmailTextExtractor(entityStream))
                    {
                        string content = extractor.ExtractAll();
                        Console.WriteLine(entity[PersonalStorageContainer.EmailSubject]);
                        Console.WriteLine(entity[PersonalStorageContainer.EmailSender]);
                        Console.WriteLine(entity[PersonalStorageContainer.EmailReceiver]);
                        Console.WriteLine(content);
                    }
                }
            }
            //ExEnd:ExtractTextFromOstContainer2_18.2
        }