java通过UDP读取文件
我有一个UDP服务器读取图像,包括UDP和TCP。 协议格式为: 长度 身份证件 有效载荷 当我试图读取有效负载或图像本身时,我可以通过使用标志来完成,但这是不可取的。如何停止以UDP读取文件(或知道何时没有更多数据)并写入文件? 注释的代码,但使用标志,我不想使用标志,因为其他客户端可能会连接,只会传输原始图像文件 谢谢java通过UDP读取文件,java,udpclient,Java,Udpclient,我有一个UDP服务器读取图像,包括UDP和TCP。 协议格式为: 长度 身份证件 有效载荷 当我试图读取有效负载或图像本身时,我可以通过使用标志来完成,但这是不可取的。如何停止以UDP读取文件(或知道何时没有更多数据)并写入文件? 注释的代码,但使用标志,我不想使用标志,因为其他客户端可能会连接,只会传输原始图像文件 谢谢 while (true) { socket.receive(receivePacket); /* if (receivePacket
while (true) {
socket.receive(receivePacket);
/*
if (receivePacket.getLength() <= 8) {
cmd = new String(receivePacket.getData(), 0,receivePacket.getLength());
if (cmd.equals("END_FILE")) {
System.out.println("UDP ServerThread() Command: " + cmd);
break;
}
}*/
fos.write(receivePacket.getData(), 0, receivePacket.getLength());
}
while(true){
套接字。接收(接收数据包);
/*
if(receivePacket.getLength()连接时不能发送长度为的初始数据包吗?UDP不适用于此类应用程序。最好使用TCP。我有文件的长度,在初始消息中,我如何使用它从socket.receive读取。您必须确保能够处理丢失、碎片和无序的数据包。您需要包含自己的数据包头o确定这一点,您可以包括一个标志,表明它是文件的结尾。