Ⅰ java程序怎么实现UDP多线程通信 用split方法分不开两段啊 以下程序有错的地方希望纠错 谢谢!!
a=new byte[8192];
a="没有该用户".getBytes();
首先这句的写法就有大问题了……
你把a先指向了一个8192长度的byte数组 然后马上又把a指向xxxx.getBytes(),也就是说第一句没有任何用处
然后你具体的代码 我已经不知道你想做什么了~~~如果你只是想用DatagrameSocket来实现数据传输其实很简单的……可以参见orelly的《java网络编程》里面的例子 我就不贴了
然后把例子改成多线程的就行了……
Ⅱ UDP不可靠Java网络编程
嗯,在设计你的应用程序协议的时候,如果你使用了UDP,那么可以考虑让对方发送一个已接收的回应,但是如果还想要进一步的功能,把协议整得太复杂了,那就建议直接用TCP了。因为,如果你把所有提高可靠性的办法都用上的话,基本上就等于重写了一遍TCP
Ⅲ 在java程序的编写上(注意不是问TCP/UDP协议的区别),基于UDP/TCP编写SIP消息的收发有什么区别
本来在java中UDP和TCP使用的包就不同!
UDP不连接就send() receive()
TCP需要获得一个OutputStream和InputStream才能读写,在获得流时就等于在建立连接
OK!?
Ⅳ JAVA用udp从本地网络穿透到公网之后,从其他网络作为客户端发送udp包到服务器正常接收。
你说的还不清楚。Java网络编程使用Socket,同为一个网络下的主机时是肯定没问题的,不论同一局域网或广域网。如果内网跨越网关,我没做过试验,按我的理解,内网主机做客户端,独立主机做服务器应该可行,反之不行。
Ⅳ 我要一份用java网络编程写的点对点的两人聊天程序(TCP和UDP)
Server端:
import java.io.*;
import java.net.*;
import java.applet.Applet;
public class TalkServer{
public static void main(String args[]) {
try{
ServerSocket server=null;
try{
server=new ServerSocket(4700);
}catch(Exception e) {
System.out.println("can not listen to:"+e);
}
Socket socket=null;
try{
socket=server.accept();
}catch(Exception e) {
System.out.println("Error."+e);
}
String line;
BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter os=new PrintWriter(socket.getOutputStream());
BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Client:"+is.readLine());
line=sin.readLine();
while(!line.equals("bye")){
os.println(line);
os.flush();
System.out.println("Server:"+line);
System.out.println("Client:"+is.readLine());
line=sin.readLine();
}
os.close();
is.close();
socket.close();
server.close();
}catch(Exception e){
System.out.println("Error:"+e);
}
}
}
Client端:
import java.io.*;
import java.net.*;
public class TalkClient {
public static void main(String args[]) {
try{
Socket socket=new Socket("127.0.0.1",4700);
BufferedReader sin=new BufferedReader(new InputStreamReader(System.in));
PrintWriter os=new PrintWriter(socket.getOutputStream());
BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String readline;
readline=sin.readLine(); //从系统标准输入读入一字符串
while(!readline.equals("bye")){
os.println(readline);
os.flush();
System.out.println("Client:"+readline);
System.out.println("Server:"+is.readLine());
readline=sin.readLine(); //从系统标准输入读入一字符串
}
os.close(); //关闭Socket输出流
is.close(); //关闭Socket输入流
socket.close(); //关闭Socket
}catch(Exception e) {
System.out.println("Error"+e); //出错,则打印出错信息
}
}
}
Ⅵ java UDP 实现 多人聊天
这个好实现,用udp里的组播socket。具体的我也不好说,代码比较的多。我给你提供一个地方:http://www.fecit.com.cn/download_search.aspx?bigcid=&cid=&sid= 在标题哪里搜java,里面有一个java网络编程精解的源代码,第八章就是UDP的数据报和套接字的源代码,你看了会有启发的!
Ⅶ 学习java需要学习udp跟tcp吗
不需要的。
udp和tcp是属于网络协议,如果能懂点当然是好的,但是就学校java来说,一般是用不到的。
Ⅷ java网络编程包含些什么
java网络编程通常包括三部分TCP/IP , UDP ,URL ;socket只是其中的一个套接字。web,jsp与上面一点关系也没有,上面是j2se的内容。下面则是j2ee内容。web是一个服务,而jsp是一种技术。实在找关系的话,web包括了jsp.
Ⅸ 用Java设计图形用户界面,在界面上基于网络编程使用UDP创建局域网的小聊天程序
首先,最快的法子是到网上下一个模板,照着学就是;
如果你要手动从零开始的话,那首先学习一项java如何用TCP或是UDP通信,放心,这不会很难,因为都是封装好的类;其次,就是学习一下java的图形界面设计,这个也不会很难因为eclipse有图形化编辑的插件,你几乎不用编码,当然这是指java的自带UI,那个长的实在不敢恭维;
然后呢?然后就好了,你就可以开始写了。