C#如何实现收发邮件功能
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇"C#如何实现收发邮件功能"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"C#如何
千家信息网最后更新 2026年10月31日C#如何实现收发邮件功能
这篇"C#如何实现收发邮件功能"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"C#如何实现收发邮件功能"文章吧。
一、服务端
TcpListener server = new TcpListener(IPAddress.Parse("127.0.0.1"), 13000);//定义监听器 server.Start();//启动监听器 byte[] buffer = new byte[1024]; //创建一个容器用于接受数据 string data = null; while (true) { //等待客户端连接过来 TcpClient client = server.AcceptTcpClient(); //Task task1 = server.AcceptTcpClientAsync(); //Socket socket = server.AcceptSocket(); //Task task2 = server.AcceptSocketAsync(); //server.Pending(); //取得客户端发送过来的数据 int len = client.Available;//获取已经从网络流接收且可供读取的数据量 NetworkStream nstream = client.GetStream(); //返回一个可供读写的网络流 int bytesRead; do { bytesRead = nstream.Read(buffer, 0, buffer.Length); //接收消息 data = Encoding.UTF8.GetString(buffer, 0, bytesRead); //先将接收到的数据转化可输出的字符串类型 Console.WriteLine("收到消息:" + data); 输出收到的信息 byte[] msg = Encoding.UTF8.GetBytes(data.ToUpper()); nstream.Write(buffer, 0, buffer.Length);//发送消息 } while (bytesRead > 0); nstream.Close(); //1.先释放流的数据 client.Close(); //2.再释放客户端的连接数据 } server.Stop(); //3.关闭监听 二、客户端
TcpClient client = new TcpClient("127.0.0.1", 13000);//连接服务器 //或者 // TcpClient client=new TcpClient(); // client.Connect("127.0.0.1", 13000); NetworkStream nstream = client.GetStream(); //---其他同服务端 nstream.Close(); //1.先释放流的数据 client.Close(); //2.再释放客户端的连接数据三、发送邮件
1、使用MailMessage和SmtpClient发送邮件。
在Wince中,可以使用OpenNetCF.Net.Mail类发送邮件。
MailMessage mailMessage = new MailMessage { //发件人 From = new MailAddress("***@163.com", "您的朋友", Encoding.UTF8), Priority = MailPriority.High, //邮件主题 SubjectEncoding = Encoding.UTF8, Subject = "Hello", }; //收件人 可以添加多个收件人 mailMessage.To.Add(new MailAddress("137***126@qq.com")); //mailMessage.CC 获取包含此电子邮件的抄送(CC)收件人的地址集合 //邮件正文 mailMessage.IsBodyHtml = true;//如果要发送html格式的消息,需要设置这个属性 mailMessage.BodyEncoding = Encoding.UTF8; mailMessage.Body = "邮件测试
"; //邮件内容即消息正文中中显示图片 ,需要为图片指明src='cid:idname(资源id)' AlternateView htmlBody = AlternateView.CreateAlternateViewFromString("
", null, "text/html"); //然后在LinkedResource加入文件的绝对地址,和ContentType 例如image/gif,text/html...与http请求的响应报文中的ContentType一致 LinkedResource lr = new LinkedResource("1.gif", "image/gif"); //绑定上文中指定的idname lr.ContentId = "zfp"; //添加链接资源 htmlBody.LinkedResources.Add(lr); mailMessage.AlternateViews.Add(htmlBody); //发送附件 指明附件的绝对地址 Attachment attachment = new Attachment("1.txt"); mailMessage.Attachments.Add(attachment); //创建邮件发送客户端 SmtpClient sendClient = new SmtpClient("smtp.qq.com", 25) { //指定邮箱账号和密码 Credentials = new NetworkCredential(fromMail, "xmxyldrmtvnrddfe") }; //指定如何发送电子邮件 sendClient.DeliveryMethod = SmtpDeliveryMethod.Network; //指定使用使用安全套接字ssl加密的链接 sendClient.EnableSsl = true; sendClient.Send(mailMessage); //或者可以一步发送 sendClient.SendAsync(mailMessage, null);2、利用TcpClient类收取pop3邮件
TcpClient client = new TcpClient("mail.**.com", 443); //连接 NetworkStream ns = client.GetStream(); StreamReader sr = new StreamReader(ns, Encoding.Default); string result = sr.ReadLine(); //返回OK或ER //登陆 StreamWriter sw = new StreamWriter(ns); sw.WriteLine("user b**"); sw.Flush(); result = sr.ReadLine(); sw.WriteLine("pass **"); sw.Flush(); result = sr.ReadLine(); //获取邮件数量 sw.WriteLine("stat"); sw.Flush(); result = sr.ReadLine();//result.split(' ')[1]表示邮件数量 //获取邮件信息 sw.WriteLine("top 1 0 "); sw.Flush(); result = sr.ReadLine(); while (true) { result = sr.ReadLine(); if (result == ".") break; if (result.Length > 4 && result.Substring(0, 8) == "Subject:") { //result为标题,乱码用Base64解码 Encoding.GetEncoding("gb2312").GetString(Convert.FromBase64String(result)); } }以上就是关于"C#如何实现收发邮件功能"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。
邮件
数据
内容
客户
消息
客户端
功能
C#
地址
收件人
服务
监听
信息
图片
数量
文章
正文
电子
电子邮件
监听器
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网络科技
博彦科技互联网金融
互联网是第几次科技革命的成果
广州万易互联网科技有限公司
科技互联网项目
北京互联网科技
深圳互联网络科技有限公司
有马互联网科技
紫鲸互联网科技
上海宁丞科技互联网
移动互联网年度科技创新
互联网科技扶贫时间
互联网科技人工智能实验室
互联网在线教育科技创业
朱啸虎曾投资哪些互联网科技企业
世界互联网领先科技成果获奖
工业互联网展湾科技股份有限公司
美国互联网科技实力
互联网金融运营模式中的金融科技
现代互联网科技公司
哈尔滨大商圈互联网科技有限公司
工业互联网科技新基建
恒生科技互联网指数分析
北京大学互联网科技怎么样
现代互联网科技股
爱医互联网络科技
世界互联网领先科技成果获奖
互联网相关科技技术
互联网科技对化妆品行业
亚光科技低轨卫星互联网