Java和C#UDP通信问题

大_爱 大_爱 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
Java作为UDP的服务器,
C#做为UDP的客户端。
源代码


package com.taoge.socke;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class UDPEchoServer {
private static final int ECHOMAX=255;//max size of echo datagram

public static void main(String[] args) throws IOException {
/*
if(args.length!=1){
throw new IllegalArgumentException("Parameter(s):<Port>");
}
*/
//int servPort=Integer.parseInt(args[0]);
int servPort = 5555;

//1.创建一个DatagramSocket实例,指定本地端口号,可以选择指定本地地址
DatagramSocket socket=new DatagramSocket(servPort);
DatagramPacket packet=new DatagramPacket(new byte[ECHOMAX],ECHOMAX);

while(true){
//2.使用DatagramSocket的receive方法来接收一个DatagramPacket实例。
socket.receive(packet);
System.out.println("Handling client at "+packet.getAddress().getHostAddress()+" on port "+packet.getPort());
System.out.println("包的数据:" + new String(packet.getData()));
socket.send(packet);
packet.setLength(ECHOMAX);
//socket.close();
}
}
}


C#部分


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net;
using System.Net.Sockets;

namespace ConsoleApplication1
{

/**
* C# 版本UDP客户端,用与连接Java服务器端发送数据。
* */
class Program
{


static void Main(string[] args)
{
int SenderPort = 5555;
String host = "127.0.0.1";

IPAddress ip = IPAddress.Parse(host);
IPEndPoint ipepoit = new IPEndPoint(ip,SenderPort);

UdpClient udpClient = new UdpClient(SenderPort);
udpClient.Connect(ip,SenderPort);

Byte[] sendByts = Encoding.ASCII.GetBytes("welcome to chengdu!!");

//udpClient.Send(sendByts,sendByts.Length);
udpClient.Send(sendByts, 255);
//IPEndPoint RemoteIpEndPoint = new IPEndPoint(ip, 0);

//Byte[] receiveBytes = udpClient.Receive(ref RemoteIpEndPoint);
//string returnData = Encoding.ASCII.GetString(receiveBytes);

//Console.WriteLine("This is the message you received " + returnData.ToString());
//Console.WriteLine("This message was sent from " + RemoteIpEndPoint.Address.ToString() + " on their port number " + RemoteIpEndPoint.Port.ToString());
Console.WriteLine("发送数据完毕!!");
udpClient.Close();

}
}
}



现在是C# 给Java发送消息,Java这段收不到消息。

Java给Java发送没有问题,C# 给C#发送也没有问题,现在就是C#发送给Java有问题。
...全文

相关推荐

java多线程tcpsocketserver源码-Unity-UdpSocket-BitStream-Utilities:用于建立udp连接和

java多线程tcpsocketserver源码unity-UdpSocket-BitStream-Utilities该项目提供了使用c#udp套接字和按位内存流的源代码和UnityPackage。U

weixin_38684743

java多线程tcpsocketserver源码-UdpSocketUnity:UdpSocketUnity

java多线程tcpsocketserver源码unity-UdpSocket-BitStream-Utilities该项目提供了使用c#udp套接字和按位内存流的源代码和UnityPackage。U

weixin_38695751

TCP/UDP模拟服务端

在IT行业中,网络通信是至关重要的一个领域,TCP(传输控制协议)和UDP(用户数据报协议)是两种最常使用的传输层协议。

yangbiao666666

UDP数据的接收,并且在Listview中显示出来

在许多实时通信场景中,如视频流、在线游戏等,UDP由于其低延迟和高效性,被广泛采用。本教程将介绍如何在编程环境中接收UDP数据,并将其结果显示在ListView中。

那里天涯有鲜花

创新!高级!【日前、日内非滚动、日内滚动调度以及实时修正】考虑需求侧响应的智慧楼宇多时间尺度调度策略(Matlab代码实现)

创新!高级!【日前、日内非滚动、日内滚动调度以及实时修正】考虑需求侧响应的智慧楼宇多时间尺度调度策略(Matlab代码实现)内容概要:本文介绍了一种考虑需求侧响应的智慧楼宇多时间尺度调度策略,涵盖日前、日内非滚动、日内滚动调度以及实时修正四个阶段,旨在通过Matlab代码实现对智慧楼宇能源系统的优化管理。该策略结合需求侧响应机制,提升能源利用效率与系统运行经济性,适用于新能源背景下的智能建筑能源调度场景。; 适合人群:具备一定电力系统或能源管理基础知识,熟悉Matlab编程,从事科研或工程应用的研究人员与技术人员。; 使用场景及目标:① 实现智慧楼宇在多时间尺度下的精细化能源调度;② 探索需求侧响应在楼宇级能源管理系统中的建模与应用;③ 借助Matlab仿真平台完成调度策略的开发、测试与优化。; 阅读建议:建议读者结合Matlab代码与相关电力系统调度理论,逐步理解各调度阶段的建模逻辑,重点关注优化目标函数与约束条件的设计,同时推荐通过案例仿真验证策略的有效性。

荔枝科研社
评论 10
收藏 已收藏
分享
返回顶部
大_爱
Java SE 62,620 成员 307,251 内容