python和c#利用UDP进行通信,给出代码
时间: 2024-02-06 16:02:47 浏览: 30
当使用UDP进行Python和C#之间的通信时,你需要在两个应用程序中分别实现UDP的发送和接收功能。下面是一个简单的示例代码,演示了Python和C#之间通过UDP进行通信的过程。
Python端代码(发送端):
```python
import socket
def main():
target_ip = "192.168.1.100" # 目标IP地址
target_port = 1111 # 目标端口号
# 创建UDP套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
while True:
message = input("请输入要发送的消息:")
if message == "exit":
break
# 发送消息到目标IP和端口
sock.sendto(message.encode(), (target_ip, target_port))
sock.close()
if __name__ == '__main__':
main()
```
C#端代码(接收端):
```csharp
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
namespace udp_server
{
class Program
{
static int port = 1111; // 接收端口号
static void Main(string[] args)
{
Console.WriteLine("服务器启动.....");
// 创建UDP套接字
UdpClient udpClient = new UdpClient(port);
IPEndPoint remoteEP = new IPEndPoint(IPAddress.Any, port);
while (true)
{
// 接收消息
byte[] bytes = udpClient.Receive(ref remoteEP);
string message = Encoding.UTF8.GetString(bytes);
Console.WriteLine("接收到消息:" + message);
}
udpClient.Close();
}
}
}
```
这个示例中,Python端通过创建UDP套接字,然后从用户输入读取消息,并将消息发送到指定的目标IP和端口。C#端通过创建UDP套接字,然后循环接收来自Python端发送的消息,并在控制台显示接收到的消息。
注意:在实际使用中,你需要根据具体的网络配置和需求进行适当的调整和处理。