下面要给大家分享的是一个java udp发送数据的实例,有具体的代码示例,对这个比较感兴趣的小伙伴可以来看看哦。
java基于UDP发送数据,先对文件进行读取,之后,再依据主机名称得到IP地址,用数据和地址创建数据报文包,创建数据报文套接字并且通过它传送,发送字符串。
代码:import java.io.*;
import java.net.*;
public class UDPSend
{
public static final String usage =
"Usage: java UDPSend ...\n" +
" or: java UDPSend -f ";
public static void main(String args[])
{
try
{
// 检查参数的个数
if (args.length
throw new IllegalArgumentException("Wrong number of args");
// 解析参数
String host = args[0];
int port = Integer.parseInt(args[1]);
byte[] message; // 要传送的数据
if (args[2].equals("-f"))
{ // 传送文件
File f = new File(args[3]);
int len = (int) f.length(); // 文件长度
message = new byte[len]; // 建立缓冲区
FileInputStream in = new FileInputStream(f);
int bytes_read = 0, n;
do { // 从文件中读取
n = in .read(message, bytes_read, len - bytes_read);
bytes_read += n;
} while ((bytes_read
}
else
{ // 发送字符串
String msg = args[2];
for (int i = 3; i
message = msg.getBytes();
}
// 根据主机名称得到IP地址
InetAddress address = InetAddress.getByName(host);
// 用数据和地址创建数据报文包
DatagramPacket packet = new DatagramPacket(message, message.length
, address, port);
// 创建数据报文套接字并通过它传送
DatagramSocket dsocket = new DatagramSocket();
dsocket.send(packet);
dsocket.close();
}
catch (Exception e)
{
System.err.println(e);
System.err.println(usage);
}
}
}
以上的udp发送数据例子你都了解了吗?你还想了解更多的java实例吗?请继续关注奇Q工具网来了解吧,更多java程序代码例子可以为你分享。
推荐阅读: