目录
- c#使用TCP协议实现数据发送和接受
- 1. 服务端代码如下所示:
- 2. 客户端代码:
c#使用TCP协议实现数据发送和接受
使用TCP协议实现数据的发送和接受包括客户端和服务端两个部分;
1. 服务端代码如下所示:
using System; using System.Net; using System.Net.Sockets; using System.Text; class Program { static void Main() { // 设置服务器IP地址和端口号 IPAddress ip = IPAddress.Parse("127.0.0.1");//写入实际的IP地址 int port = 8888; // 创建TCP监听器 TcpListener listener = new TcpListener(ip, port); listener.Start(); Console.WriteLine("等待客户端连接..."); // 接受客户端连接 TcpClient client = listener.AcceptTcpClient(); Console.WriteLine("客户端已连接"); // 获取网络流 NetworkStream stream = client.GetStream(); // 读取客户端发送的数据 byte[] buffer = new byte[1024]; int bytesRead = stream.Read(buffer, 0, buffer.Length); string dataReceived = Encoding.ASCII.GetString(buffer, 0, bytesRead); Console.WriteLine("接收到数据: " + dataReceived); // 向客户端发送数据 string dataToSend = "Hello, Client!"; byte[] dataBytes = Encoding.ASCII.GetBytes(dataToSend); stream.Write(dataBytes, 0, dataBytes.Length); Console.WriteLine("已发送数据: " + dataToSend); // 关闭连接 stream.Close(); client.Close(); listener.Stop(); } }
2. 客户端代码:
using System; using System.Net.Sockets; using System.Text; class Program { static void Main() { // 设置服务器IP地址和端口号 string serverIP = "127.0.0.1"; int serverPort = 8888; // 创建TCP客户端 TcpClient client = new TcpClient(); client.Connect(serverIP, serverPort); Console.WriteLine("已连接到服务器"); // 获取网络流 NetworkStream stream = client.GetStream(); // 向服务器发送数据 string dataToSend = "Hello, Server!"; byte[] dataBytes = Encoding.ASCII.GetBytes(dataToSend); stream.Write(dataBytes, 0, dataBytes.Length); Console.WriteLine("已发送数据: " + dataToSend); // 读取服务器发送的数据 byte[] buffer = new byte[1024]; int bytesRead = stream.Read(buffer, 0, buffer.Length); string dataReceived = Encoding.ASCII.GetString(buffer, 0, bytesRead); Console.WriteLine("接收到数据: " + dataReceived); // 关闭连接 stream.Close(); client.Close(); } }
总结:上述示例使用服务器端创建一个TCP监听器,等待客户端连接。当客户端连接后,服务器端从客户端接收数据,并向客户端发送数据。客户端则连接到服务器,向服务器发送数据,并接收服务器发送的数据。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)