C#中编写TCP客户端和服务端

在C#中编写TCP客户端和服务端涉及到System.Net.Sockets命名空间中的TcpListener和TcpClient类。下面分别给出一个简单的TCP服务端和客户端的示例代码。

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

public class TcpServer

{

public static void StartServer()

{

// 监听的IP和端口

IPAddress ipAddress = IPAddress.Parse("127.0.0.1");

int port = 8888;

// 创建TcpListener实例

TcpListener listener = new TcpListener(ipAddress, port);

Console.WriteLine($"服务器启动,等待连接: {ipAddress}:{port}");

// 开始监听

listener.Start();

try

{

while (true)

{

// 等待客户端连接

TcpClient client = listener.AcceptTcpClient();

Console.WriteLine("客户端已连接");

// 获取网络流,用于读取客户端发送的数据

NetworkStream stream = client.GetStream();

// 读取数据

byte[] buffer = new byte[1024];

int read = stream.Read(buffer, 0, buffer.Length);

string dataReceived = Encoding.ASCII.GetString(buffer, 0, read);

Console.WriteLine($"接收到的消息: {dataReceived}");

// 发送响应

string response = "你好,客户端!";

byte[] sendData = Encoding.ASCII.GetBytes(response);

stream.Write(sendData, 0, sendData.Length);

// 关闭客户端连接

client.Close();

}

}

catch (Exception ex)

{

Console.WriteLine(ex.ToString());

}

finally

{

// 停止监听

listener.Stop();

}

}

public static void Main(string[] args)

{

StartServer();

}

}

这些示例假设在同一台机器上运行服务端和客户端,因此使用了localhost(即127.0.0.1)作为IP地址。在实际应用中,服务端IP应为实际服务器的IP地址。

在实际部署时,确保防火墙配置允许相应的端口通信。

这些代码仅提供了基本功能,生产环境中可能需要更复杂的错误处理和性能优化。

相关推荐
xy_optics3 小时前
用matlab探索卷积神经网络(Convolutional Neural Networks)-3
开发语言·matlab·cnn
独好紫罗兰3 小时前
洛谷题单3-P1720 月落乌啼算钱(斐波那契数列)-python-流程图重构
开发语言·算法·leetcode
iOS技术狂热者4 小时前
wireshak抓手机包 wifi手机抓包工具
websocket·网络协议·tcp/ip·http·网络安全·https·udp
慕容莞青5 小时前
MATLAB语言的进程管理
开发语言·后端·golang
jimin_callon5 小时前
VBA第三十八期 VBA自贡分把表格图表生成PPT
开发语言·python·powerpoint·编程·vba·deepseek
矛取矛求6 小时前
C++ 标准库参考手册深度解析
java·开发语言·c++
٩( 'ω' )و2606 小时前
stl_list的模拟实现
开发语言·c++·list
麻芝汤圆7 小时前
MapReduce 的广泛应用:从数据处理到智能决策
java·开发语言·前端·hadoop·后端·servlet·mapreduce
珊瑚里的鱼7 小时前
第五讲(下)| string类的模拟实现
开发语言·c++·笔记·程序人生·算法·visualstudio·visual studio
哈哈哈哈哈哈哈哈哈...........7 小时前
【java】在 Java 中,获取一个类的`Class`对象有多种方式
java·开发语言·python