JAVA带界面的UDP程序要求调用界面上的ip和端口号地址
制作的JAVA窗口中有ip和端口号地址,按钮,文本框的都有,就是想问下,怎么通过制作一个UDP程序,把窗口中的ip地址和端口调出来,实现与PC机(或者TCP/UDP测试工具)的链接,能够进行数据传输。通过点击窗口中的按钮,把窗口中其他文本的数据发送出来,到另一个文本框中,(如要发送的是 电话号码 12345678,电话号码是标签,12345678是文本,就是把12345678发送出来到指定的文本框中或TCP/UDP测试工具的UDP接收端。) 这个貌似要用到线程,一个接受数据,一个发送数据,对ip端口的调用那方面,和界面上的调用不是太了解,不知道那个大神给指导下,谢谢了。 java UDP 界面 ip和端口号 数据收发 --------------------编程问答-------------------- 帮你写一个不现实,给你一个差不多的改改吧
能改出来的话就是属于你的东西了,收获的更多。
今晚最后一个帖子。回完睡觉。。。
至于界面,其实就是两个Frame调用下面的方法而已。。
另外服务端程序可以尝试改成线程的
Client
public class UDPClient {
public static void main(String[] args){
DatagramSocket socket = null;
DatagramPacket sendPacket = null;
DatagramPacket receivePacket = null;
try{
// 1,创建DatagramSocket
socket = new DatagramSocket();
// 2,创建发送用的packet
byte[] buff =
"please give me your time :"
.getBytes("UTF-8");
sendPacket = new DatagramPacket
(buff,buff.length,
new InetSocketAddress(
"localhost",9900));
// 3,利用socket以及DatagramPacket发送数据
socket.send(sendPacket);
// 4,创建接收用的packet
byte[] buffRe = new byte[20];
receivePacket =
new DatagramPacket(buffRe,buffRe.length);
//5,利用socket以及DatagramPacket接收数据
socket.receive(receivePacket);
System.out.println(new String(buffRe));
}catch(Exception e){
e.printStackTrace();
}finally{
try{
// 6,关闭socket
if(socket!=null)socket.close();
}catch(Exception e){}
}
}
}
Server
--------------------编程问答-------------------- 尽管你的程序排列的很工整,但你发的这类程序,我也曾改过,但没改成功,我做的是基于NetBeans的界面UDP程序,是需要调用界面上的IP以及端口号的,并找到相应的IP以及端口号,进行数据传输,谢谢你的评论,但很抱歉,我不能给你打分。 --------------------编程问答-------------------- 好吧,有没有用java做的TCP&UDP测试工具,给我一个也行。
public class UDPServer {
public static void main(String[] args){
DatagramSocket socket = null;
DatagramPacket sendPacket = null;
DatagramPacket receivePacket = null;
try{
// 1,创建DatagramSocket
socket = new DatagramSocket(9900);
while(true){
// 2,创建接收用的packet
byte[] buffRe = new byte[40];
receivePacket =
new DatagramPacket(buffRe,buffRe.length);
//3,利用socket以及DatagramPacket接收数据
socket.receive(receivePacket);
System.out.println(new String(buffRe));
// 4,创建发送用的packet
byte[] buff =
new Date().toString()
.getBytes();
// 5, 获得客户端的信息,并包装
sendPacket = new DatagramPacket
(buff,buff.length,
receivePacket.getSocketAddress());
// 6,利用socket以及DatagramPacket发送数据
socket.send(sendPacket);
}
}catch(Exception e){
e.printStackTrace();
}
}
}
补充:Java , Java相关