socket网络编程

服务端

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方法读写数据


首页 我的博客
粤ICP备17103704号