欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Lumisoft.NET組件POP3郵件接收與刪除操作怎么用-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)Lumisoft.NET組件POP3郵件接收與刪除操作怎么用的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)萬寧,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18982081108

Lumisoft.NET組件是一個(gè)非常強(qiáng)大的郵件發(fā)送、郵件接收等功能的開源組件,一般用它來處理郵件的相關(guān)操作,是非常合適的。

1、POP3登錄及頭部信息獲取

首先使用POP3,必須創(chuàng)建一個(gè)POP3_Client的對(duì)象,然后通過Connect和Login進(jìn)行連接和登錄處理,相關(guān)的代碼如下所示。


復(fù)制代碼 代碼如下:


using (POP3_Client popClient = new POP3_Client())
            {
                popClient.Logger = new Logger();
                popClient.Logger.WriteLog += new EventHandler<WriteLogEventArgs>(WriteLog);

                popClient.Connect(pop3Server, pop3Port, pop3UseSsl);
                popClient.Login(username, password);

POP3的的郵件下載通過POP3_Client 對(duì)象的屬性Messages對(duì)象進(jìn)行,每個(gè)POP3_ClientMessage代表一份完整的郵件信息,一開始應(yīng)該是只是獲取一些簡(jiǎn)單的郵件信息(其中包括郵件的標(biāo)識(shí)UID),這樣才能提高POP3協(xié)議的處理速度,如下代碼所示。


復(fù)制代碼 代碼如下:


foreach (POP3_ClientMessage message in popClient.Messages)



為了進(jìn)一步獲取郵件頭部信息,那么需要進(jìn)行下面的轉(zhuǎn)換


復(fù)制代碼 代碼如下:


Mail_Message mime_header = Mail_Message.ParseFromByte(message.HeaderToByte());



轉(zhuǎn)換后Mail_Message承載了郵件頭部文件的很多必備信息,如發(fā)送人,發(fā)送人名稱,接收地址,抄送人地址,郵件標(biāo)題,郵件日期等等信息。

這些郵件地址的信息,都是通過Mail_t_Mailbox對(duì)象來記錄,一般包含郵件地址的Address和顯示名稱DisplayName,這樣非常方便用來顯示,如我們可以進(jìn)行轉(zhuǎn)義,記錄到數(shù)據(jù)庫里面。


復(fù)制代碼 代碼如下:


if (mime_header.From != null)
                        {
                            //(wuhuacong@163.com)
                            string displayname = mime_header.From[0].DisplayName;
                            string from = mime_header.From[0].Address;// DecodeString(mime_header.From[0].Address);
                            if (!string.IsNullOrEmpty(displayname))
                            {
                                info.From = string.Format("{0}({1})", displayname, from);
                            }
                            else
                            {
                                info.From = string.Format("{0}", from);
                            }
                        }


復(fù)制代碼 代碼如下:


if (mime_header.To != null)
                        {
                            StringBuilder sb = new StringBuilder();
                            foreach (Mail_t_Mailbox recipient in mime_header.To.Mailboxes)
                            {
                                string displayname = recipient.DisplayName;
                                string address = recipient.Address;
                                if (!string.IsNullOrEmpty(displayname))
                                {
                                    sb.AppendFormat("{0}({1});", displayname, address);
                                }
                                else
                                {
                                    sb.AppendFormat("{0};", address);
                                }
                            }
                            info.Senders = sb.ToString().Trim(';');
                        }

                        if (mime_header.Cc != null)
                        {
                            StringBuilder sb = new StringBuilder();
                            foreach (Mail_t_Mailbox recipient in mime_header.Cc.Mailboxes)
                            {
                                string displayname = recipient.DisplayName;
                                string address = recipient.Address;
                                if (!string.IsNullOrEmpty(displayname))
                                {
                                    sb.AppendFormat("{0}({1});", displayname, address);
                                }
                                else
                                {
                                    sb.AppendFormat("{0};", address);
                                }
                            }
                            info.Carboncopy = sb.ToString().Trim(';');
                        }

每封Email會(huì)有一個(gè)在Pop3服務(wù)器范圍內(nèi)的Id,檢查這個(gè)Id是否存在就可以知道以前有沒有接收過這封郵件


復(fù)制代碼 代碼如下:


info.MailUid = message.UID;



每份郵件的頭部信息,都會(huì)包含一個(gè)日期的,如下可以獲取到該日期


復(fù)制代碼 代碼如下:


info.Date = mime_header.Date;



標(biāo)題信息可以通過下面代碼獲取


復(fù)制代碼 代碼如下:


info.Title = mime_header.Subject;/



2、郵件正文信息和附件信息的獲取

如果需要進(jìn)一步獲取郵件的正文內(nèi)容,則需要對(duì)信息進(jìn)行進(jìn)一步的轉(zhuǎn)換,把message對(duì)象進(jìn)行MessageToByte操作,然后利用函數(shù)Mail_Message.ParseFromByte進(jìn)行轉(zhuǎn)換。


復(fù)制代碼 代碼如下:


byte[] messageBytes = message.MessageToByte();

Mail_Message mime_message = Mail_Message.ParseFromByte(messageBytes);
if (mime_message == null) continue;
info.Body = mime_message.BodyText;
try
{
     if (!string.IsNullOrEmpty(mime_message.BodyHtmlText))
     {
            info.Body = mime_message.BodyHtmlText;
     }
 }
catch
{
     //屏蔽編碼出現(xiàn)錯(cuò)誤的問題,錯(cuò)誤在BodyText存在而BodyHtmlText不存在的時(shí)候,訪問BodyHtmlText會(huì)出現(xiàn)
}

郵件的附件是通過MIME_Entity來承載信息的,所以我們需要把對(duì)象通過mime_message.GetAttachments(true, true)進(jìn)行獲取,轉(zhuǎn)換為附件信息。


復(fù)制代碼 代碼如下:


#region 郵件附件內(nèi)容
                        foreach (MIME_Entity entity in mime_message.GetAttachments(true, true))
                        {
                            if (entity.ContentDisposition != null &&
                                entity.ContentDisposition.Param_FileName != null)
                            {
                                //Console.WriteLine("Attachment: " + entity.ContentDisposition.Param_FileName);
                                string fileName = entity.ContentDisposition.Param_FileName;



如果需要進(jìn)一步獲取附件里面的文件字節(jié)流,那么還需要進(jìn)行進(jìn)一步的轉(zhuǎn)換為MIME_b_SinglepartBase對(duì)象。


復(fù)制代碼 代碼如下:


MIME_b_SinglepartBase byteObj = (MIME_b_SinglepartBase)entity.Body;
 if (byteObj != null)
 {
         FileUtil.CreateFile(filePath, byteObj.Data);
         fileSize = byteObj.Data.Length;



如果要區(qū)分郵件里面的附件是內(nèi)嵌圖片附件還是真正的附件,那么可以通過下面代碼進(jìn)行判斷,如果是MIME_DispositionTypes.Attachment的就是普通附件,MIME_DispositionTypes.Inline的就是內(nèi)嵌正文的附件。


復(fù)制代碼 代碼如下:


entity.ContentDisposition.DispositionType == MIME_DispositionTypes.Attachment



3、郵件的刪除操作
 
服務(wù)器上的郵件,可以通過POP3的協(xié)議方式進(jìn)行刪除,刪除操作很簡(jiǎn)單,主要是通過mail.MarkForDeletion進(jìn)行標(biāo)識(shí)即可,實(shí)例操作代碼如下所示


復(fù)制代碼 代碼如下:


using (POP3_Client c = new POP3_Client())
            {
                c.Connect(pop3Server, pop3Port, pop3UseSsl);
                c.Login(username, password);

                if (c.Messages.Count > 0)
                {
                    foreach (POP3_ClientMessage mail in c.Messages)
                    {
                        try
                        {
                            if (toDeleteMailUidList.Contains(mail.UID))
                            {
                                mail.MarkForDeletion();

                                deletedList.Add(mail.UID);
                            }
                        }
                        catch (Exception ex)
                        {
                            LogTextHelper.Error(ex);
                        }
                    }
                }
            }


感謝各位的閱讀!關(guān)于“Lumisoft.NET組件POP3郵件接收與刪除操作怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

當(dāng)前題目:Lumisoft.NET組件POP3郵件接收與刪除操作怎么用-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://aaarwkj.com/article18/codhgp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、企業(yè)網(wǎng)站制作、品牌網(wǎng)站建設(shè)、ChatGPT、商城網(wǎng)站動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)
日本不卡二区高清三区| 国产精品福利午夜在线观看| 国产男女爱猛视频在线| 91午夜福利视频鉴赏| 亚洲免费视频区一区二| 亚洲精品主播一区二区三区| 国产中文字幕精品在线| 国产激情av网站在线观看 | 亚洲国产色一区二区三区| 国模在线视频一区二区| 亚洲国模av一区二区三区| 2022国产精品一区| 久久久国产一区二区三区| 国产美女被狂操到高潮| 亚洲国产偷拍在线观看| 神马视频一区二区在线观看| 亚洲综合色一区二区三区小说| 午夜福利主播一区二区| 国内自拍视频一区高清视频| 国产精品一区二区黑人巨大| 日韩精品在线观看一| 日韩新片一区二区三区| 欧美一区二区在线精品| 国产乡下三级_三级全黄| 国产成人综合久久三区北岛玲| 91狠狠综合久久精品| 精品久久激情中文字幕| 少妇被又粗又硬猛烈进视频| 亚洲午夜天堂在线a毛片| 超碰香蕉在线在线观看| 夫妻爱爱视频在线观看| 日本午夜专区一区二区| 四虎永久精品国产毛片| 亚洲香蕉av在线一区二区三区| 欧美夫妻香蕉视频网站| 午夜两性做爰免费视频| 国产精品国产三级丝袜| 久久久久久国产精品亚洲| 国产精品美女露脸av毛片| 国产一区丝袜高跟在线| 日韩亚洲欧美成人一区|