- 浏览: 111780 次
- 性别:
- 来自: 成都
文章分类
- 全部博客 (134)
- java (134)
- [转]sqlserver 数据类型 及使用考虑 (1)
- 保存、读取、删除到sdcard图片 (1)
- hashcode 重写 (1)
- sql2008导出数据 (1)
- Android开发(1):随机绘制彩色实心圆 (1)
- JPA 应用技巧 1:实体类和实体 DAO 模板 (1)
- 狩魂之神即将开测 - 2012年最值得期待的网页游戏 (1)
- mantis (1)
- MediaWiki (1)
- ExtMail (1)
- MDaemon搭建公司项目环境 (1)
- NIO 之 选择就绪模式 (1)
- web应用系统架构设计 (1)
- XML CDATA (1)
- firefox+Firebug调试JavaScript、HTML和CSS (1)
- 在SUSE 11中安装Windows虚拟机 (1)
- 将字节流(byte[])转换成文件 (1)
- HTML5网站 (1)
- 在Android中自定义IOS风格的按钮 (1)
- 基于SVG的WebGIS的一个雏形 (1)
- 程序名称DreamIT(梦想IT)提供许多IT公司的面试和笔试试题 (1)
- 介绍一个ASP.NET开发工具Web Matrix (1)
- C#信息采集工具实现 (1)
- Qt 4.7.4 完美动态编译发布动态调试,以及静态编译发布 (1)
- 2011面试题目之猴子偷桃 (1)
- Linux tar压缩时排除某个目录或文件的参数 (1)
- Crack JRebel 4.0,无需重启JVM,热部署解决方案 (1)
- Groovy Sql使用Spring的事务管理 (1)
- <<让oracle跑的更快1>>读书笔记2 (1)
- 不要再浪费时间 (1)
- JSP (1)
- PHP (1)
- Python (1)
- Ruby (1)
- Perl概要及各自特点 (1)
- JVM 内存结构(转) (1)
- [转载]JPA 批注参考(1) (1)
- Hadoop配置部分内容 (1)
- HD2刷机的基础知识 HD2的radio、HSPL、ROM三种组合 (1)
最新评论
-
alexyao8:
顶起
[G4Studio开源平台]如何搭建G4开发环境 -
greatghoul:
太二了。
不要再浪费时间 -
wengbo316:
它们一定是花果山的猴子,数数能数到3K多呢。。。
2011面试题目之猴子偷桃 -
mycar:
额.待补充...........
保存、读取、删除到sdcard图片 -
沙舟狼客:
这太折磨人了, 还有人要看吗?
[] javaeye rss抓取
那位高手可以帮小弟改一下以下程序,只实现传送简单的数据包,谢谢!
import java.net.*;
import java.io.*;
import java.awt.*;
class udpcommunicationserver extends frame {
private label label1, label2;
private panel panel1, panel2;
private textfield textfield;
private string name, name1;
private textarea textarea;
private datagramsocket sendsocket, receivesocket;
private datagrampacket sendpacket, receivepacket;
public udpcommunicationserver() {
super("通信控制台:");
panel1 = new panel();
panel1.setlayout(new borderlayout());
label1 = new label("通话记录");
textarea = new textarea(10, 20);
textarea.settext("欢迎你!");
panel1.add("north", label1);
panel1.add("center", textarea);
add("north", panel1);
panel2 = new panel();
panel2.setlayout(new borderlayout());
label2 = new label("发言:");
panel2.add("center", label2);
textfield = new textfield(20);
panel2.add("south", textfield);
add("center", panel2);
setvisible(true);
try {
sendsocket = new datagramsocket();
receivesocket = new datagramsocket(5000);
} catch (socketexception e) {
e.printstacktrace();
system.exit(1);
}
}
public void waitforpacket() {
while (true) {
try {
byte[] buf = new byte[100];
receivepacket = new datagrampacket(buf, buf.length);
receivesocket.receive(receivepacket);
name = receivepacket.getaddress().tostring();
if (name1 != name) {
textarea.append("\n来自主机:" + name + "\n端口:"
+ receivepacket.getport());
}
textarea.append("\n客户:");
byte[] data = receivepacket.getdata();
string receivedstring = new string(data);
textarea.append(receivedstring);
name1 = name;
} catch (ioexception e) {
textarea.append("\n网络通信出现错误,问题在" + e.tostring());
}
}
}
public void processevent(awtevent e) {
if (e.getid() == event.window_destroy) {
setvisible(false);
dispose();
system.exit(0);
}
super.processevent(e);
}
public boolean action(event e, object o) {
try {
textarea.append("\n服务器:");
string string = o.tostring();
textarea.append(string);
byte[] databyte = new byte[100];
databyte = string.getbytes();
sendpacket = new datagrampacket(databyte, string.length(),
inetaddress.getbyname(name), 5001);
sendsocket.send(sendpacket);
} catch (ioexception ioe) {
textarea.append("网络通信出现错误,问题在" + ioe.tostring());
}
return true;
}
}
public class udpserver {
public static void main(string[] args) {
udpcommunicationserver cs = new udpcommunicationserver();
// cs.setvisible(true);
cs.waitforpacket();
}
}
import java.net.*;
import java.io.*;
import java.awt.*;
import java.applet.*;
public final class client extends applet{
private label label1,label2;
private panel panel1,panel2;
private textfield textfield;
private textarea textarea;
private datagramsocket sendsocket,receivesocket;
private datagrampacket sendpacket,receivepacket;
public void init(){
setbackground(color.gray);
setlayout(new borderlayout());
panel1=new panel();
panel1.setlayout(new borderlayout());
label1=new label("通话记录");
textarea=new textarea(10,20);
textarea.settext("欢迎你!");
panel1.add("north",label1);
panel1.add("center",textarea);
add("north",panel1);
label2=new label("发言:");
panel2=new panel();
panel2.add("center",label2);
textfield=new textfield(20);
textfield.settext("");
panel2.add("south",textfield);
add("center",panel2);
setvisible(true);
}
public void start(){
waitforpackets();
}
public void waitforpackets(){
try{
sendsocket=new datagramsocket();
receivesocket=new datagramsocket(5001);
}catch(socketexception e){
textarea.append("不能打开数据报socket,或数据报socket无法与指定端口连接!");
}
while(true){
try{
byte []buf=new byte[100];
receivepacket=new datagrampacket(buf,buf.length);
receivesocket.receive(receivepacket);
textarea.append("\n服务器:");
byte[]data=receivepacket.getdata();
string receivedstring=new string(data);
textarea.append(receivedstring);
}catch (ioexception e){
textarea.append("\n网络通信出现错误,问题在"+e.tostring());
}
}
}
public boolean action(event e,object o){
try{
textarea.append("\n客户端:");
string string=o.tostring();
textarea.append(string);
byte[]databyte=new byte[100];
databyte=string.getbytes();
sendpacket=new datagrampacket(
databyte,string.length(),inetaddress.getbyname("localhost"),5000);
sendsocket.send(sendpacket);
}catch(ioexception ioe){
textarea.append("网络通信出现错误,问题在"+ioe.tostring());
}
return true;
}
}
import java.net.*;
import java.io.*;
import java.awt.*;
class udpcommunicationserver extends frame {
private label label1, label2;
private panel panel1, panel2;
private textfield textfield;
private string name, name1;
private textarea textarea;
private datagramsocket sendsocket, receivesocket;
private datagrampacket sendpacket, receivepacket;
public udpcommunicationserver() {
super("通信控制台:");
panel1 = new panel();
panel1.setlayout(new borderlayout());
label1 = new label("通话记录");
textarea = new textarea(10, 20);
textarea.settext("欢迎你!");
panel1.add("north", label1);
panel1.add("center", textarea);
add("north", panel1);
panel2 = new panel();
panel2.setlayout(new borderlayout());
label2 = new label("发言:");
panel2.add("center", label2);
textfield = new textfield(20);
panel2.add("south", textfield);
add("center", panel2);
setvisible(true);
try {
sendsocket = new datagramsocket();
receivesocket = new datagramsocket(5000);
} catch (socketexception e) {
e.printstacktrace();
system.exit(1);
}
}
public void waitforpacket() {
while (true) {
try {
byte[] buf = new byte[100];
receivepacket = new datagrampacket(buf, buf.length);
receivesocket.receive(receivepacket);
name = receivepacket.getaddress().tostring();
if (name1 != name) {
textarea.append("\n来自主机:" + name + "\n端口:"
+ receivepacket.getport());
}
textarea.append("\n客户:");
byte[] data = receivepacket.getdata();
string receivedstring = new string(data);
textarea.append(receivedstring);
name1 = name;
} catch (ioexception e) {
textarea.append("\n网络通信出现错误,问题在" + e.tostring());
}
}
}
public void processevent(awtevent e) {
if (e.getid() == event.window_destroy) {
setvisible(false);
dispose();
system.exit(0);
}
super.processevent(e);
}
public boolean action(event e, object o) {
try {
textarea.append("\n服务器:");
string string = o.tostring();
textarea.append(string);
byte[] databyte = new byte[100];
databyte = string.getbytes();
sendpacket = new datagrampacket(databyte, string.length(),
inetaddress.getbyname(name), 5001);
sendsocket.send(sendpacket);
} catch (ioexception ioe) {
textarea.append("网络通信出现错误,问题在" + ioe.tostring());
}
return true;
}
}
public class udpserver {
public static void main(string[] args) {
udpcommunicationserver cs = new udpcommunicationserver();
// cs.setvisible(true);
cs.waitforpacket();
}
}
import java.net.*;
import java.io.*;
import java.awt.*;
import java.applet.*;
public final class client extends applet{
private label label1,label2;
private panel panel1,panel2;
private textfield textfield;
private textarea textarea;
private datagramsocket sendsocket,receivesocket;
private datagrampacket sendpacket,receivepacket;
public void init(){
setbackground(color.gray);
setlayout(new borderlayout());
panel1=new panel();
panel1.setlayout(new borderlayout());
label1=new label("通话记录");
textarea=new textarea(10,20);
textarea.settext("欢迎你!");
panel1.add("north",label1);
panel1.add("center",textarea);
add("north",panel1);
label2=new label("发言:");
panel2=new panel();
panel2.add("center",label2);
textfield=new textfield(20);
textfield.settext("");
panel2.add("south",textfield);
add("center",panel2);
setvisible(true);
}
public void start(){
waitforpackets();
}
public void waitforpackets(){
try{
sendsocket=new datagramsocket();
receivesocket=new datagramsocket(5001);
}catch(socketexception e){
textarea.append("不能打开数据报socket,或数据报socket无法与指定端口连接!");
}
while(true){
try{
byte []buf=new byte[100];
receivepacket=new datagrampacket(buf,buf.length);
receivesocket.receive(receivepacket);
textarea.append("\n服务器:");
byte[]data=receivepacket.getdata();
string receivedstring=new string(data);
textarea.append(receivedstring);
}catch (ioexception e){
textarea.append("\n网络通信出现错误,问题在"+e.tostring());
}
}
}
public boolean action(event e,object o){
try{
textarea.append("\n客户端:");
string string=o.tostring();
textarea.append(string);
byte[]databyte=new byte[100];
databyte=string.getbytes();
sendpacket=new datagrampacket(
databyte,string.length(),inetaddress.getbyname("localhost"),5000);
sendsocket.send(sendpacket);
}catch(ioexception ioe){
textarea.append("网络通信出现错误,问题在"+ioe.tostring());
}
return true;
}
}
发表评论
-
HD2刷机的基础知识 HD2的radio、HSPL、ROM三种组合
2012-02-07 15:13 1100今天看着教程刚刷了台HD2,觉得有用的文章顺便转载过来 ... -
Hadoop配置部分内容
2012-02-04 15:29 741[size=medium;]Hadoop配置部分内容[ ... -
[转载]JPA 批注参考(1)
2012-02-04 11:39 725作为 Java 企业版 5 ... -
JVM 内存结构(转)
2012-02-03 14:49 899http://www.4ucode.com/Study ... -
JSP,PHP,Python,Ruby,Perl概要及各自特点
2012-01-31 15:18 994互联网技术日新月异,编程的语言层出不穷,原本稍微平静了 ... -
不要再浪费时间
2012-01-31 15:08 910不要再浪费时间 &l ... -
<<让oracle跑的更快1>>读书笔记2
2012-01-11 13:24 10231 绑定变量 1 ... -
Groovy Sql使用Spring的事务管理
2011-12-28 18:43 1287Grails如果不想用Hibernate的东东,可以直 ... -
Crack JRebel 4.0,无需重启JVM,热部署解决方案
2011-12-28 18:28 1170http://dl.dropbox.com/u/229 ... -
Linux tar压缩时排除某个目录或文件的参数
2011-12-21 13:48 1303在对某个目录进行压缩的时候,有时候想排除掉某个目录,例 ... -
2011面试题目之猴子偷桃
2011-12-21 11:14 1508<span style="" ... -
Qt 4.7.4 完美动态编译发布动态调试,以及静态编译发布
2011-12-20 14:53 1602首先是准备工作 ... -
C#信息采集工具实现
2011-12-20 12:34 918简单C#信息采集工具实现 最近想整只爬虫玩玩,顺便熟 ... -
介绍一个ASP.NET开发工具Web Matrix
2011-12-19 09:49 966想学习或者开发个小型的ASP.NET程序,装个VS.N ... -
程序名称DreamIT(梦想IT)提供许多IT公司的面试和笔试试题
2011-12-19 09:24 916<font style="bac ... -
基于SVG的WebGIS的一个雏形
2011-12-14 13:19 680我和一位师弟,经过了很多天的努力,终于做出了一个简单的 ... -
在Android中自定义IOS风格的按钮
2011-12-12 10:09 1096<p class="MsoNorm ... -
HTML5网站
2011-12-12 08:55 809记得刚来现在公司的时候,老大就说,作为移动平台部门的员 ... -
将字节流(byte[])转换成文件
2011-12-09 08:25 1523/** * 将字节流转换成文件 * @par ... -
在SUSE 11中安装Windows虚拟机
2011-12-09 01:29 899Novell公司最近推出 ...
相关推荐
以下将详细介绍相关的Java UDP通信和套接字通信知识点。 1. **Java UDP通信基础** - UDP是无连接的,即在发送数据前无需建立连接,因此它的速度较快,但不保证数据的顺序和可靠性。 - Java中的`java.net....
Java UDP通信是网络编程中的一个重要部分,它基于用户数据报协议(User Datagram Protocol),是一种无连接的、不可靠的传输层协议。UDP不提供数据包的顺序保证、错误检查或重传机制,而是以较小的开销换取较高的...
Java udp通信编程client端
Java udp通信编程server端程序
Java实现UDP通信,按照固定的帧格式发送数据和接收数据,对数据的格式解码处理。实现了显示同设备的不同工作模式的显示。发送不同的命令数据帧。 Java实现UDP通信,按照固定的帧格式发送数据和接收数据,对数据的...
SpringMVC的Socket实现+Java Tomcat websocket实现+Java Socket通信实现 +Java UDP通信实现。websocket_study.rar 为springMVC版本的socket实现 websocket02.rar 里面包含tomcat的websocket实现+java socket双向通信...
Java UDP通信是网络编程中的一个重要概念,主要涉及的是使用Java的Socket编程接口中的DatagramSocket类来实现用户数据报协议(UDP)的通信。UDP是一种无连接的、不可靠的传输协议,它不保证数据包的顺序到达或重传...
在Java中,我们通常使用`java.net.DatagramSocket`类来实现UDP通信。 1. **UDP Socket编程基础**: Java中的`DatagramSocket`类用于创建UDP套接字,它允许我们发送和接收数据报包。`DatagramPacket`类则封装了数据...
本教程将详细介绍如何在Android和Java中实现UDP通信。 首先,理解UDP的特点至关重要。UDP不提供连接建立、数据确认和流量控制等机制,因此它的开销较小,但同时也意味着数据可能会丢失、重复或乱序。在实现Android ...
在Java中,我们可以通过`java.net.DatagramSocket`类来实现UDP通信。多线程技术则能帮助我们在程序中同时处理多个任务,提高程序的并发性能。在这个"java udp 多线程实现简单的通信"的项目中,我们可能看到了如何...
Java UDP 通信客户端与服务器端实例分析 Java UDP 通信客户端与服务器端实例分析是介绍 Java 语言基于 UDP 协议的客户端与服务器端的实现技巧和相关操作注意事项。UDP 协议是一种无连接的网络协议,它不像 TCP 协议...
Java UDP通信是网络编程中的一个重要部分,它基于无连接的用户数据报协议(User Datagram Protocol),相较于TCP,UDP提供了一种轻量级、快速且不可靠的数据传输方式。本资料主要针对初学者,通过简单的代码示例来...
下面是一个简单的Java UDP通信示例: ```java // 服务器端 public class UDPServer { public static void main(String[] args) throws Exception { DatagramSocket serverSocket = new DatagramSocket(12345); ...
在这个Java UDP通信实例中,我们有两个关键文件:`ClientUDP.java` 和 `ServerUDP.java`,它们分别代表UDP通信的客户端和服务端。 ### 客户端 (`ClientUDP.java`) 客户端通常负责发起通信请求,发送数据到服务器。...
java读写Modbus TCP UDP数据,java与modbus通信,Modbus TCP UDP与java通信 全开源 这是一个能正常通过Modbus TCP UDP协议读写项目 请放心下载,完全开源,在多个项目中已经使用
本项目是用Java语言编写的一个PC端UDP通信程序,设计用于与安卓设备进行数据交换,特别适用于实时性要求较高的应用,如在线游戏、视频流媒体等。 【描述】中的关键点在于程序是在Eclipse集成开发环境中运行的,这...
Java UDP通信是网络编程中的一个重要部分,UDP(User Datagram Protocol)是一种无连接的、不可靠的传输协议,常用于实时数据传输或者对数据完整性要求不高的场景。在Java中,我们通常使用`java.net`包中的`...
在Java中,我们使用`java.net.DatagramSocket`类来实现UDP通信。这个压缩包包含的是关于Java多线程UDP服务器程序(ServerThread)和客户端程序的代码示例以及相关的多线程Socket编程资料。 1. **UDP通信基础**: ...
Java中实现UDP通信主要依赖于`java.net.DatagramSocket`类。这个类提供了发送和接收UDP数据报文的功能。客户端创建`DatagramSocket`实例,然后可以通过`send()`方法发送`DatagramPacket`,通过`receive()`方法接收...
以上就是关于“Java实现UDP通信协议”的关键知识点。理解并掌握这些内容,可以帮助开发者实现高效的UDP通信应用,并能处理相关的数据转换、日志记录和异常情况。通过实际项目练习,可以加深对这些概念的理解,并提升...