Java网络编程(UDP协议-聊天程序)
接收端:
package WebProgramingDemo; import java.net.DatagramPacket;
import java.net.DatagramSocket; public class CharReceivePart implements Runnable{ private DatagramSocket ds;
public CharReceivePart(DatagramSocket ds) {
this.ds=ds;
}
@Override
public void run() {
try{
while(true){
byte[] buf=new byte[1024];
DatagramPacket dp1=new DatagramPacket(buf, buf.length);
ds.receive(dp1);
String ip=dp1.getAddress().getHostAddress();
int port=dp1.getPort();
String text=new String(dp1.getData(),0,dp1.getLength());
System.out.println(ip+"::"+port+"::"+text);
}
}catch(Exception e){ }
} }
发送端:
package WebProgramingDemo; import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress; public class ChartSendPart implements Runnable { DatagramSocket ds2;
public ChartSendPart(DatagramSocket ds2) {
this.ds2=ds2;
}
@Override
public void run() {
try{
BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in));
String line=null;
while((line=bufr.readLine())!=null){
byte buf[]=new byte[1024];
DatagramPacket dp2=new DatagramPacket(buf, buf.length,InetAddress.getByName("192.168.2.255"),10001);
ds2.send(dp2);
}
}catch(Exception e){ }
} }
主类:
package WebProgramingDemo; import java.io.IOException;
import java.net.DatagramSocket; public class ChartDamo { /**
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException { DatagramSocket send=new DatagramSocket();
DatagramSocket receive=new DatagramSocket(10001);
new Thread(new ChartSendPart(send)).start();
new Thread(new CharReceivePart(receive)).start();
} }
Java网络编程(UDP协议-聊天程序)的更多相关文章
- Java网络编程(UDP协议:接收端)
package WebProgramingDemo; import java.io.IOException; import java.net.DatagramPacket; import java.n ...
- Java网络编程(UDP协议:发送端)
package WebProgramingDemo; import java.io.IOException; import java.net.DatagramPacket; import java.n ...
- 网络编程TCP协议-聊天室
网络编程TCP协议-聊天室(客户端与服务端的交互); <span style="font-size:18px;">1.客户端发数据到服务端.</span> ...
- JAVA 网络编程 - 实现 群聊 程序
在实现 这个 程序之前, 我们 需要 了解 一些 关于 Java 网络 编程 的 知识. 基本 的 网络知识: 网络模型 OSI (Open System Interconnection 开放系统互连 ...
- java网络编程+通讯协议的理解
参考: http://blog.csdn.net/sunyc1990/article/details/50773014 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很 ...
- Java网络编程UDP通信原理
前言 继续今天我们的Java网络编程--TCP和UDP通信 一.TCP和UDP概述 传输层通常以TCP和UDP协议来控制端点与端点的通信 TCP UDP 协议名称 传输控制协议 用户数据包协议 是 ...
- 网络编程(UDP协议-聊天程序)
网络编程中的UDP协议中聊天程序,发送端口,和接受端口. 发送端口(Send): <span style="font-size:18px;">package cn.it ...
- Java网络编程——UDP聊天程序
UDP简介 UDP协议的全称是用户数据报,在网络中它与TCP协议一样用于处理数据报.在OSI模型中,UDP位于第四层--传输层,处于IP协议额上一层.UDP有不提供数据报分组.组装以及不能对数据报排序 ...
- java 网络编程 UDP TCP
网络编程 网络编程主要用于解决计算机与计算机(手机.平板..)之间的数据传输问题. 网络编程: 不需要基于html页面就可以达到数据之间的传输. 比如: feiQ , QQ , 微信....网页编程: ...
随机推荐
- HDU 1422 重温世界杯(DP)
点我看题目 题意 : 中文题不详述. 思路 : 根据题目描述及样例可以看出来,如果你第一个城市选的是生活费减花费大于等于0的时候才可以,最好是多余的,这样接下来的就算是花超了(一定限度内的花超),也可 ...
- jmeter 测试java协议经验总结
对java协议的良好支持,是jmeter比loadrunner优秀的地方,但是坑也不少,本文将相关点都整理下来备忘 一. 依赖的jar包 使用IDE开发jemter java协议脚本时,需要导入以下几 ...
- [原]捉虫记3:_ConectionPtr指针调用open失败
背景 产品使用MySQL来存储报警服务产生的报警.在报警服务的组件中使用ADO接口 客户方有两台计算机,一台计算机A用来组态,且可以对设备进行调试,操作系统是Win7 64bit 专业版,安装了VS2 ...
- 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建
使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 目录 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 使用jenkins自动 ...
- [PHP] - 逗号和点号的区别
比如:1. echo 'abc'.'def'; //用点号连接字符串 2. echo 'abc','def'; //用逗号连接字符串 也许很多人都知道逗号要比点号快.但是不知道为什么.更不知道这两者到 ...
- 结构体buf_chunk_t
/** Buffer pool chunk comprising buf_block_t */ typedef struct buf_chunk_struct buf_chunk_t; /** A c ...
- bzoj3196
平衡树系列终于完结,撒花 裸的树套树,扔代码跑 ; ..] of longint; son:..,..] of longint; a,root:..*] of longint; i,n,m,x,y,k ...
- JAVA并发编程学习笔记之ReentrantLock
ReentrantLock是一个可重入的互斥锁,ReentrantLock由最近成功获取锁,还没有释放的线程所拥有,当锁被另一个线程拥有时,调用lock的线程可以成功获取锁.如果锁已经被当前线程拥有, ...
- acdream 瑶瑶带你玩激光坦克 (模拟)
瑶瑶带你玩激光坦克 Time Limit: 2000/1000MS (Java/Others) Memory Limit: 256000/128000KB (Java/Others) Submi ...
- (转载)memcpy的几个实现版本
(转载)http://blog.sina.com.cn/s/blog_4d3a41f40100cvza.html 实现void *memcpy(void *to, const void *from, ...