抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

在C#中,我们可以使用Socket类来进行网络通讯。Socket是一个抽象的概念,它代表了一个网络连接的端点。Socket类提供了一些方法和属性,用于创建、连接、发送和接收数据。

创建Socket

在C#中创建Socket可以使用Socket类的构造函数。常见的有以下两种方式:

创建TCP Socket

Socket tcpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

创建UDP Socket

Socket udpSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);

连接Socket

使用Socket进行通讯前,需要先连接到远程主机。连接可以使用Connect方法实现。例如,连接到IP地址为192.168.1.100,端口号为1234的远程主机:

tcpSocket.Connect("192.168.1.100", 1234);

发送和接收数据

连接成功后,可以使用Send方法发送数据,使用Receive方法接收数据。这些方法都是阻塞的,即如果没有数据可以发送或接收,它们会一直等待,直到有数据可用为止。

发送数据

byte[] buffer = Encoding.UTF8.GetBytes("Hello, world!");
tcpSocket.Send(buffer);

接收数据

byte[] buffer = new byte[1024];
int count = tcpSocket.Receive(buffer);
string message = Encoding.UTF8.GetString(buffer, 0, count);

断开连接

通讯完成后,需要断开连接。可以使用Close方法关闭Socket连接:

tcpSocket.Close();

总结

以上是C#使用Socket进行网络通讯的基本方法。当然,Socket还提供了很多高级的功能,例如异步操作、多线程等,可以根据实际需求进行使用。