生成一个SOCKET的udp的客户端和服务端代码,要求用C SHARP 来完成,并让我明白如何使用
时间: 2024-05-02 19:21:48 浏览: 11
以下是C#语言实现UDP客户端和服务端的示例代码:
UDP客户端:
```csharp
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
class UDPClient
{
static void Main(string[] args)
{
// 设置服务器IP地址和端口号
IPAddress ip = IPAddress.Parse("127.0.0.1");
int port = 8888;
// 创建UDP客户端
UdpClient client = new UdpClient();
// 发送数据
string message = "Hello, server!";
byte[] data = Encoding.UTF8.GetBytes(message);
client.Send(data, data.Length, new IPEndPoint(ip, port));
// 关闭连接
client.Close();
}
}
```
UDP服务端:
```csharp
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
class UDPServer
{
static void Main(string[] args)
{
// 设置监听的IP地址和端口号
IPAddress ip = IPAddress.Parse("127.0.0.1");
int port = 8888;
// 创建UDP服务端
UdpClient server = new UdpClient(new IPEndPoint(ip, port));
// 接收数据
IPEndPoint clientEP = new IPEndPoint(IPAddress.Any, 0);
byte[] data = server.Receive(ref clientEP);
string message = Encoding.UTF8.GetString(data);
Console.WriteLine("Received message: {0}", message);
// 关闭连接
server.Close();
}
}
```
以上代码中,UDP客户端使用UdpClient类发送数据,需要指定服务器的IP地址和端口号,然后将数据转换为字节数组并发送到服务器。UDP服务端同样使用UdpClient类,需要指定监听的IP地址和端口号,然后通过Receive方法接收从客户端发送过来的数据。接收到数据后,将其转换为字符串并输出到控制台。
使用步骤:
1. 将以上代码保存为两个不同的.cs文件,如UDPClient.cs和UDPServer.cs。
2. 打开命令提示符或Powershell,进入存放.cs文件的目录。
3. 编译.cs文件,生成.exe文件。在命令提示符或Powershell中执行以下命令:
```
csc UDPClient.cs
csc UDPServer.cs
```
4. 启动UDP服务端。在命令提示符或Powershell中执行以下命令:
```
UDPServer.exe
```
5. 启动UDP客户端。在命令提示符或Powershell中执行以下命令:
```
UDPClient.exe
```
6. 查看UDP服务端输出的信息,应该可以看到UDP客户端发送的数据。