简介:
对Socket的封装,使其使用较为简单。
Server Code
// 建立一个TCP监听对象,来监听客户端端的连接
TcpListener server = new TcpListener(IPAddress.Parse("172.26.128.1"), 8090);
// 开始监听客户端的连接
server.Start();
// 接收连接上的客户端
TcpClient client = server.AcceptTcpClient();
// 获取客户端的输入输出流对象
NetworkStream stream = client.GetStream();
byte[] buffer = new byte[1024];
int length = stream.Read(buffer, 0, buffer.Length);
Console.WriteLine("接收到客户端的数据" + Encoding.UTF8.GetString(buffer, 0, length));
// 发送数据到客户端
string sendMessage = "这条消息发给客户端";
byte[] sendMessageByte = Encoding.UTF8.GetBytes(sendMessage);
stream.Write(sendMessageByte,0, sendMessageByte.Length);
// 关闭流
stream.Close();
// 关闭连接上打的客户端
client.Close();
// 停止监听客户端的连接
server.Stop();
Console.WriteLine("程序执行完毕,请按任意键退出");
Console.ReadKey();
Client Code
// 创建一个TCP 客户端,绑定要连接的服务器地址和接口
TcpClient client = new TcpClient("172.26.128.1", 8090);
byte[] willSendBytes = Encoding.UTF8.GetBytes("这条消息发给服务器端");
// 发送消息给服务器
client.GetStream().Write(willSendBytes, 0, willSendBytes.Length);
byte[] buffer = new byte[1024];
// 获取服务器端发过来的消息
int length = client.GetStream().Read(buffer, 0, 1024);
Console.WriteLine("接收到服务器发过来的消息" + Encoding.UTF8.GetString(buffer, 0, length));
// 关闭流
client.GetStream().Close();
// 释放占用资源,关闭客户端连接
client.Close();
Console.WriteLine("程序执行完毕,请按任意键退出");
Console.ReadKey();