- 浏览: 2146084 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1240)
- mac/IOS (287)
- flutter (1)
- J2EE (115)
- android基础知识 (582)
- android中级知识 (55)
- android组件(Widget)开发 (18)
- android 错误 (21)
- javascript (18)
- linux (70)
- 树莓派 (18)
- gwt/gxt (1)
- 工具(IDE)/包(jar) (18)
- web前端 (17)
- java 算法 (8)
- 其它 (5)
- chrome (7)
- 数据库 (8)
- 经济/金融 (0)
- english (2)
- HTML5 (7)
- 网络安全 (14)
- 设计欣赏/设计窗 (8)
- 汇编/C (8)
- 工具类 (4)
- 游戏 (5)
- 开发频道 (5)
- Android OpenGL (1)
- 科学 (4)
- 运维 (0)
- 好东西 (6)
- 美食 (1)
最新评论
-
liangzai_cool:
请教一下,文中,shell、C、Python三种方式控制led ...
树莓派 - MAX7219 -
jiazimo:
...
Kafka源码分析-序列5 -Producer -RecordAccumulator队列分析 -
hp321:
Windows该命令是不是需要安装什么软件才可以?我试过不行( ...
ImageIO读jpg的时候出现javax.imageio.IIOException: Unsupported Image Type -
hp321:
Chenzh_758 写道其实直接用一下代码就可以解决了:JP ...
ImageIO读jpg的时候出现javax.imageio.IIOException: Unsupported Image Type -
huanghonhpeng:
大哥你真强什么都会,研究研究。。。。小弟在这里学到了很多知识。 ...
android 浏览器
package com.iaiai.test; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.DatagramPacket; import java.net.DatagramSocket; import java.net.InetSocketAddress; import java.net.SocketException; import java.net.URLDecoder; import java.net.URLEncoder; import java.util.Scanner; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * * <br/> * Title: Main.java<br/> * E-Mail: 176291935@qq.com<br/> * QQ: 176291935<br/> * Http: iaiai.iteye.com<br/> * Create time: 2013-1-29 上午11:41:09<br/> * <br/> * * @author 丸子 * @version 0.0.1 */ public class Main { private DatagramSocket ds; private int port; public Main(int port) throws IOException { this.port = port; ds = new DatagramSocket(port); // ds.setBroadcast(true); } public static void main(String[] args) throws Exception { int port = 9876; Main main = new Main(port); main.start(); } void start() throws Exception { startServer(); Scanner scanner = new Scanner(System.in); String name = ""; while (name.isEmpty()) { System.out.print("请输入名称:"); name = scanner.nextLine(); } String msg = ""; while (!"exit".equalsIgnoreCase(msg)) { if (!msg.isEmpty()) { send(name, msg); } System.out.print("输入消息:>"); msg = scanner.nextLine(); } System.exit(0); } private void send(String name, String msg) throws IOException { String sendMsg = encoder(name) + "," + encoder(msg); try { byte[] buf = sendMsg.getBytes("UTF-8"); DatagramPacket dp = new DatagramPacket(buf, buf.length); dp.setSocketAddress(new InetSocketAddress("255.255.255.255", port)); ds.send(dp); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } private static String encoder(String str) { try { return URLEncoder.encode(str, "UTF-8"); } catch (UnsupportedEncodingException e) { return ""; } } private void startServer() throws SocketException { ExecutorService threadPool = Executors.newCachedThreadPool(); threadPool.submit(new UdpReceive(ds)); } static class UdpReceive implements Runnable { private DatagramSocket ds; UdpReceive(DatagramSocket ds) { this.ds = ds; } @Override public void run() { byte[] buf = new byte[1024]; DatagramPacket dp = new DatagramPacket(buf, buf.length); while (true) { try { ds.receive(dp); String str = new String(dp.getData(), dp.getOffset(), dp.getLength()); String[] msgs = str.split(","); String name = decode(msgs[0]); String msg = decode(msgs[1]); System.out.println(name + " 说:" + msg + " (" + dp.getSocketAddress() + ")"); // System.out.println("收到来自:"+dp.getSocketAddress()+"的消息 "+new // String(dp.getData(),dp.getOffset(),dp.getLength())); } catch (IOException e) { e.printStackTrace(); } } } private static String decode(String str) { try { return URLDecoder.decode(str, "UTF-8"); } catch (UnsupportedEncodingException e) { return ""; } } } }
发表评论
-
小程序textarea完美填坑
2020-07-07 16:09 460相信做微信小程序的码友们都被textarea这个原生组件坑过 ... -
Nginx+Https自己敲命令生成证书
2020-05-18 09:35 899一、准备 环境:centos6.8 ... -
https证书生成环境搭建配置(基于Tomcat和Nginx)
2020-04-24 11:06 781一、基于Tomcat、JDK内置密钥工具: 1、生成服务端证 ... -
史上最强Tomcat8性能优化
2019-11-01 21:41 731授人以鱼不如授人以渔 ... -
SpringBoot配置HTTPS,并实现HTTP访问自动转HTTPS访问
2019-10-07 09:13 5191.使用jdk自带的 keytools 创建证书 打开cmd ... -
Spring Boot工程集成全局唯一ID生成器 UidGenerator
2019-09-16 09:04 809概述 流水号生成器(全局唯一 ID生成器)是服务化系统的基础 ... -
CentOS7下Redis的安装与使用
2019-08-17 11:45 556一、手动安装过程 1、准备工作(安装gcc依赖) yum ... -
Nginx与tomcat组合的简单使用
2019-08-17 10:05 366配置tomcat跳转 请求http出现400的时候在这里配置 ... -
linux下lvs+keepalived安装配置
2019-07-10 14:20 432keepalived主机:192.168.174. ... -
使用Docker搭建Tomcat运行环境
2019-02-08 21:32 4451 准备宿主系统 准备一 ... -
Netty笔记-GlobalEventExecutor
2019-02-06 23:00 5791.概念 /** * Single-thread si ... -
Netty4转发服务的实现方案
2019-02-06 15:03 1040如果用Netty做转发服务(不需要同步应答),Netty中有一 ... -
java手机号归属地查询
2018-12-25 17:16 702所需的包:carrier-1.75.jar 、geocoder ... -
基于Netty4的HttpServer和HttpClient的简单实现
2018-10-17 20:02 626Http 消息格式: Http request: Met ... -
javafx : 支持使用微调(spinner)控制的数字的文本框(NemberTextField)
2018-10-16 00:00 994最近花了一些时间学习javaFX, 要更深入地理解新GUI包, ... -
我的Java(定制你的Java/JavaFX Runtime)
2018-10-12 23:29 631最新的JDK 11发布了,撒花 新版本的JDK终于有了ope ... -
javaFX的几个新特性,让swing彻底过时
2018-10-12 22:42 605首先声明,Java的GUI曾经 ... -
mac os系统用install4j把jar包生成app
2018-10-05 23:02 1352install4j有windows版也有mac版 mac电脑 ... -
JavaFX Alert对话框
2018-10-05 22:01 22431. 标准对话框 消息对话框 Alert alert = ... -
IDEA Properties中文unicode转码问题
2017-02-17 19:54 929摘要: 如何让IDEA的properties中的中文进行uni ...
相关推荐
为了应付老师随便写了个,很简单。! 所以传上来了 MFC UDP 群聊 局域网 广播
c# 广播代码 基于局域网的udp聊天软件 能实现群聊
2.发送消息使用UDP,传送文件使用TCP 3.用户上线时,自动发送广播消息,而后在双方好友列表里可以互相看见 4.支持更改用户名 5.默认用户名为机器名 代码里注释写得很多,初学TCP和UDP的朋友可以此做参考。 有兴趣的...
基于UDP网上聊天程序v0.2版,只有一个界面,不区分客户端和服务器端,具有接收私聊和群聊信息、上/下线、屏蔽群聊信息等功能,用户上下线通过发送广播消息,其他正在运行的程序收到广播信息后增/删上线列表,存在bug
本程序采用udp进行广播,适合教学机房里群聊 在聊天过程中,可以自由更改昵称
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源...
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源...
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源...
简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...
简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...
简单聊天软件CS模式 2个目标文件 一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 ...
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...