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 , 微信....网页编程: ...
随机推荐
- C++ DLL 模板 .
C++ DLL 模板 1.使用VS2005创建Win32 DLL项目,选择空项目,然后加入CppDll.h和CppDll.cpp文件. 2.修改CppDll.h和CppDll.cpp文件使之成为需要的 ...
- hbase 使用备忘
hbase是基于hadoop的,所以hbase服务器必须启动hadoop,这点很重要. 当然hbase其实只用到了dadoop的一个组件 1. 启动hadoop-dfs 在主上执行如下命令,可以把主和 ...
- highcharts 折线图
<!doctype html> <html lang="en"> <head> <script type="text/javas ...
- nginx配置负载均衡与反向代理
#给文件夹授权 1 chown -R www:www /usr/local/nginx #修改配置文件vim nginx.conf 1 2 3 4 5 6 7 8 9 10 11 12 13 ...
- Android:控件Spinner实现下拉列表
在Web开发中,HTML提供了下拉列表的实现,就是使用<select>元素实现一个下拉列表,在其中每个下拉列表项使用<option>表示即可.这是在Web开发中一个必不可少的交 ...
- std::advance 给迭代器增加指定偏移量
template <class InputIterator, class Distance> void advance (InputIterator& it, Distance n ...
- POJ3278——Catch That Cow(BFS)
Catch That Cow DescriptionFarmer John has been informed of the location of a fugitive cow and wants ...
- Android studio中不同颜色代表什么意思
和你的版本控制工具相关 绿色,已经加入控制暂未提交红色,未加入版本控制蓝色,加入,已提交,有改动白色,加入,已提交,无改动
- Java基于Servlet 验证吗
req.setCharacterEncoding("utf-8"); resp.setContentType("text/html;charset=utf- ...
- 函数(Functions)
概念: 下面是蛮经典的解释: What Good are Functions? You might have considered the situation where you would li ...