求段简单的Socket的代码 编写一个自己给自己发消息,然后接收的代码我就是接收不到,不知怎么的谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public class Test { public static void main(String[] args) { String text = "java project" ; try { Receive rev = new Receive() ; rev.start() ; InetAddress target = InetAddress.getByName("255.255.255.255"); byte[] buf = text.getBytes() ; DatagramPacket sendPacket = new DatagramPacket(buf, buf.length, target, 6188) ; DatagramSocket sendSocket = new DatagramSocket() ; sendSocket.send(sendPacket) ; sendSocket.close() ; rev.interrupt() ; } catch (Exception e) { e.printStackTrace(); } }public class Receive extends Thread { public void run(){ while(true){ try { byte[] array = new byte[1000]; DatagramPacket receivePacket = new DatagramPacket(array, array.length); DatagramSocket receiveSocket = new DatagramSocket(6188); receiveSocket.receive(receivePacket); String data = byteToString(receivePacket.getData(), receivePacket.getLength()); System.out.println(data); } catch (Exception e) { e.printStackTrace(); } } } static String byteToString(byte[] yb, int len) { String rs = ""; int i = 0; char c; for (i = 0; i < len; i++) { c = (char) yb[i]; rs = rs + String.valueOf(c); } return (rs); }}请问我这有什么问题? public void run(){ try { DatagramSocket receiveSocket = new DatagramSocket(6188); while(true){ byte[] array = new byte[1000]; DatagramPacket receivePacket = new DatagramPacket(array, array.length); receiveSocket.receive(receivePacket); String data = byteToString(receivePacket.getData(), receivePacket.getLength()); System.out.println(data); } } catch (Exception e) { e.printStackTrace(); } }调式成功~~~ DatagramSocket receiveSocket = new DatagramSocket(6188); 不能放在循环里面给分~~~谢谢想贴调试结果的图片出来,好像没地方上传 如果java垃圾回收机制没有自动运行,怎么可以不使内存溢出? 线程与内存 JTable 问题 java怎么把word中的字体属性读出来啊 高手留步 JAVA新手的两个问题(强制类型转换、接口/抽象类) 断言 assert 对Hibernate性能优化的认识 令人迷惑的JMF安装问题 看看我哪里配错了? java 读取xml的NullPointer问题 如何在模板类中(如ArrayList<T>)强制类实现多个接口?
public class Test {
public static void main(String[] args) {
String text = "java project" ;
try {
Receive rev = new Receive() ;
rev.start() ;
InetAddress target = InetAddress.getByName("255.255.255.255");
byte[] buf = text.getBytes() ;
DatagramPacket sendPacket = new DatagramPacket(buf, buf.length, target, 6188) ;
DatagramSocket sendSocket = new DatagramSocket() ;
sendSocket.send(sendPacket) ;
sendSocket.close() ;
rev.interrupt() ;
} catch (Exception e) {
e.printStackTrace();
}
}public class Receive extends Thread {
public void run(){
while(true){
try {
byte[] array = new byte[1000];
DatagramPacket receivePacket = new DatagramPacket(array, array.length);
DatagramSocket receiveSocket = new DatagramSocket(6188);
receiveSocket.receive(receivePacket); String data = byteToString(receivePacket.getData(), receivePacket.getLength());
System.out.println(data);
} catch (Exception e) {
e.printStackTrace();
}
}
}
static String byteToString(byte[] yb, int len) {
String rs = "";
int i = 0;
char c;
for (i = 0; i < len; i++) {
c = (char) yb[i];
rs = rs + String.valueOf(c);
}
return (rs);
}}
请问我这有什么问题?
try {
DatagramSocket receiveSocket = new DatagramSocket(6188);
while(true){
byte[] array = new byte[1000];
DatagramPacket receivePacket = new DatagramPacket(array, array.length);
receiveSocket.receive(receivePacket); String data = byteToString(receivePacket.getData(), receivePacket.getLength());
System.out.println(data);
}
} catch (Exception e) {
e.printStackTrace();
}
}
调式成功~~~
给分~~~谢谢想贴调试结果的图片出来,好像没地方上传