首页 > 代码库 > Socket通信
Socket通信
1.0 版本
1.1 服务器端
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading.Tasks; namespace Server_1._0 { class Program { static void Main(string[] args) { //01 创建对象 关键字new Socket stk = new Socket(AddressFamily.InterNetwork,//设置IP地址的类型 为ip4 SocketType.Stream, //设置传输方式 为流式传输 ProtocolType.Tcp//设置传输协议 为Tcp ); //02 绑定对象 关键字bind() stk.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 11011)); //03 监听对象 关键字Listen() stk.Listen(10); Console.WriteLine("服务器启动成功!"); //04 接受客户端 关键字Accept() {证明Accept会阻塞线程} Socket client = stk.Accept(); Console.WriteLine("服务器接受到客户端请求!"); //05 接受报文 关键字receive //05-01 通过字节流传递 定义一个字节数组 {证明Receive也会阻塞线程} byte[] bys = new byte[1024]; int len = client.Receive(bys); Console.WriteLine("服务器接收到报文"); //06 显示接收到的字节数组 string str = Encoding.UTF8.GetString(bys, 0, len); Console.WriteLine(str); //07 发送消息 关键字 send string mes = "已成功接收到你发的消息:<" + str + ">"; client.Send(Encoding.UTF8.GetBytes(mes)); Console.ReadKey(); } } }
1.2 客户端
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading.Tasks; namespace Client_1._0 { class Program { static void Main(string[] args) { //01 创建socket 关键字new Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); //02 创建连接 关键字connect client.Connect(IPAddress.Parse("127.0.0.1"),11011); Console.WriteLine("与服务器创建连接"); //03 发送消息 关键字Send //03-01 定义字节数组 byte[] bys = new byte[1024]; if (Console.ReadLine() == "1") { bys = Encoding.UTF8.GetBytes("逍遥小天狼"); client.Send(bys); Console.WriteLine("向服务器发送消息!"); } //04 接受消息 //int len = 0; //while ((len = client.Receive(bys))>0) //{ // string s2 = Encoding.UTF8.GetString(bys, 0, len); // Console.Write(s2); //} byte [] by = new byte[1024]; int len = client.Receive(by); Console.WriteLine(Encoding.UTF8.GetString(by,0,len)); Console.ReadKey(); } } }
2.0 版本
Socket通信
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。