服务端
1.创建socker
Socket tcpServer = new Socket( AddressFamily.InterNetwork,//内网 SocketType.Stream,//传输类型 ProtocolType.Tcp);//协议
2.绑定ip跟端口号
IPAddress ip = new IPAddress(new byte[]{192,168,252,8}); EndPoint point = new IPEndPoint(ip,7788); //封装ip和端口,终端 tcpServer.Bind(point);//绑定
3.监听和发送消息
tcpServer.Listen(100);//最大绑定数 Socket client = tcpServer.Accept();//暂停当前线程,直到有客户端连接 //使用返回的Socket进行通信 string message = "hello 欢迎你"; byte[] data = Encoding.UTF8.GetBytes(message); client.Send(data);
客户端
1.创建Socket
Socket cilent = new Socket( AddressFamily.InterNetwork,//内网 SocketType.Stream,//传输类型 ProtocolType.Tcp);//协议
2.发起建立连接的请求
IPAddress ip = IPAddress.Parse("192.168.252.8"); EndPoint point = new IPEndPoint(ip,7788); client.Connect(point); byte[] data = new byte[1024]; int length = client.Receive(data); string message = Encoding.UTF8.GetString(data,0,length);
实例运用中,服务器建立一个客户端类,用来管理客户端的收发信息,在主程序中用一个客户端类集合管理全部的客服端。
需要不停接受,不停监听的都要开启一个线程
TcpListener TcpClient 使用NetworkStream类表示网络。用GetStream返回网络流,再调用Read Write方法读写数据