黑马程序员-UDP网络程序
来源:互联网 发布:ad hoc网络协议 编辑:程序博客网 时间:2024/05/16 15:26
DatagramSocket 类
用来创建收发UDP数据包的对象
public DatagramSocket() //未指定端口的构造函数,系统会自动分配一个未使用的端口。
主要用于主动发送数据。
public DatagramSocket(int port) //先接收数据,需要用到这个构造函数,需要自己指定端口号。
public DatagramSocket(int port,InetAddress laddr) //明确指定端口及IP地址。
close方法:当不使用DatagramSocket对象时,用此方法关闭,以回收资源。
send(DatagramPacket p)方法用于发送数据包
receive(DatagramPacket p)方法用于接收数据包
DatagramPacket 类
public DatagramPacket(byte[] buf,int length) 主要用于接收数据
public DatagramPacket(byte[] buf,int length,InetAddress address,int port) 主要用于发送数据
getInetAddress 和getPort方法,当接收到网络上的数据后,用这两个方法,可以得到发送方的IP和Port
getData和getLength方法,获得接收到的数据的内容和长度
InetAddress类 用于表示计算机IP地址的一个类。
getByName方法(静态方法)
getHostAddress方法
UdpRecv.java
===================================
import java.net.*;
public class UdpRecv {
/**
* Method main
*
*
* @param args
*
*/
public static void main(String[] args) throws Exception
{
// TODO: 在这添加你的代码
byte[] buf =new byte[1024];
DatagramSocket ds=new DatagramSocket(3000);
DatagramPacket dp=new DatagramPacket(buf,1024);
ds.receive(dp);
System.out.println(new String(dp.getData(),0,dp.getLength())+" from "+
dp.getAddress().getHostAddress()+":"+dp.getPort());
ds.close();
}
}
UdpSend.java
========================================
import java.net.*;
public class UdpSend {
/**
* Method main
*
*
* @param args
*
*/
public static void main(String[] args) throws Exception {
DatagramSocket ds=new DatagramSocket();
String str="Hello www.it315.org";
ds.send(
new DatagramPacket("Hello www.it315.org".getBytes(),"Hello www.it315.org".length(),
InetAddress.getByName("192.168.0.101"),3000));
ds.close();
// TODO: 在这添加你的代码
}
}
- 黑马程序员-UDP网络程序
- 黑马程序员-用UDP编写网络聊天程序
- 黑马程序员----------UDP网络编程
- 黑马程序员 ---网络编程 UDP
- 黑马程序员-网络编程UDP
- 黑马程序员-UDP聊天程序
- 黑马程序员——网络编程(一)--概述、UDP网络程序
- 黑马程序员:网络编程之UDP传输
- 黑马程序员--网络编程Socket(udp)
- 黑马程序员_ 网络编程(1) UDP
- 黑马程序员-网络编程 udp传输
- 黑马程序员——网络编程UDP
- 黑马程序员--java网络之udp
- 黑马程序员_<<网络编程----UDP>>
- 黑马程序员---网络,tcp udp 笔记
- 黑马程序员-->08_TCP、UDP网络编程
- 黑马程序员—网络编程之UDP
- 黑马程序员—网络编程之UDP
- The content of the adapter has changed解决方法
- 主机和虚拟机ping不通的原因
- Javascript的一些思想
- 用eclipse导入uboot工程 以及 分步make的方法
- 如何生成给定分布的随机数
- 黑马程序员-UDP网络程序
- 学习《.net框架 程序设计》学习笔记---委托(一)
- 研究 tekkamanninja-u-boot-2010.03-tekkaman 遇到的问题
- Android的七巧板Activity之二 Activity的加载模式
- axis2/c运行方式
- 在Ubuntu上下载、编译和安装Android最新源代码
- IPC对象
- STL容器适配器:stack
- 信号量