利用UDP进行两台主机进行通信
2017-08-08 20:31
218 查看
1、创建接受方:
2、创建发送方:
package com.tiger.udp; import java.io.*; import java.net.*; import java.util.Scanner; /** * UDP 发送方 * 1、假如: 我的发到:127.0.0.1, 端口号: 5555 * 2、创建一个 UDP 数据报报文包(packet),包含的内容如下: * (1)数据 * (2)数据的长度 * (3)接收方 Address * (4)接收方 Port * @author tiger * @Date 2017年8月2日 */ public class Sender { public static void main(String[] args) { DatagramSocket socket = null; DatagramPacket p = null; Scanner sc = new Scanner(System.in); System.out.println("请输入需要发送的消息:"); try { socket = new DatagramSocket(); InetAddress ia = InetAddress.getByName("127.0.0.1"); //从控制台输入要发送的数据 String content = sc.nextLine(); System.out.println(content); p = new DatagramPacket(content.getBytes(), content.getBytes().length, ia, 5556); socket.send(p); } catch (IOException e) { e.printStackTrace(); } } }package com.tiger.udp; import java.io.IOException; import java.net.DatagramPacket; import java.net.DatagramSocket; /** * UDP 接收方 * 注意:1、端口与发送方一致 * * @author tiger * @Date 2017年8月2日 */ public class Receiver { final static int PORT = 5556; public static void main(String[] args) { DatagramSocket socket = null; DatagramPacket p = null; try { System.out.println("等待接收。。。。"); socket = new DatagramSocket(PORT); byte[] buff = new byte[1024]; p = new DatagramPacket(buff, 50); //一旦调用这一方法, 会程序的阻塞, 直到你收到有数据报为止。 socket.receive(p); byte[] temp = p.getData(); int size = p.getLength(); if (size > 0) { String content = new String(temp,0,size,"UTF-8"); System.out.println("接收到消息:"+content); } } catch (IOException e) { e.printStackTrace(); } } }
2、创建发送方:
相关文章推荐
- 测试两台主机之间是否可以UDP通信
- Android中利用httpclient进行网络通信的方法(以用户登录为例说明)
- 两台PC间利用网线进行文件传输
- 实现两台MPTCP主机之间的通信——VSFTPD的配置与使用
- LInux中利用线程实现多个客户端和服务器端进行通信
- 利用C#进行Socket通信编程
- 利用管道进行进程的通信示例
- 利用管道进行通信
- [C语言]一个很实用的服务端和客户端进行UDP通信的实例
- 利用第三方开源项目 EventBus 进行通信
- java 利用UDP协议 通信
- 线程利用管道字节(字符)流进行通信
- VM中linux和windows主机进行串口通信
- android利用handler进行内部通信
- C#使用 UdpClient 类进行简单通信的例子
- Bridge网络模式下Linux虚拟机和主机进行通信
- Windows Mobile程序环境配置以及Windows Mobile与PC进行UDP通信总结
- 利用WSAEventSelect进行网络通信
- 利用thrift rpc进行C++与Go的通信
- 示例,利用【socket】 模块进行通信