黑马程序员技术交流社区
标题:
一个基础的端口接收的问题
[打印本页]
作者:
铃铃铃铃铃锋
时间:
2015-5-30 14:48
标题:
一个基础的端口接收的问题
import java.net.*;
import java.io.*;
class UdpSend2
{
public static void main(String[] args) throws Exception
{
DatagramSocket ds = new DatagramSocket();
BufferedReader bufr =
new BufferedReader(new InputStreamReader(System.in));
String line = null;
while((line=bufr.readLine())!=null)
{
if("886".equals(line))
break;
byte[] buf = line.getBytes();
DatagramPacket dp =
new DatagramPacket(buf,buf.length,InetAddress.getByName("122.244.162.113"),10002);
ds.send(dp);
}
ds.close();
}
}
class UdpRece2
{
public static void main(String[] args) throws Exception
{
DatagramSocket ds = new DatagramSocket(10002);
while(true)
{
byte[] buf = new byte[1024];
DatagramPacket dp = new DatagramPacket(buf,buf.length);
ds.receive(dp);
String ip = dp.getAddress().getHostAddress();
String data = new String(dp.getData(),0,dp.getLength());
System.out.println(ip+"::"+data);
}
}
}
代码是毕老师那资料上拷来的 只改了ip地址 可是端口就是有问题 也不知道是什么问题 应该是我自己电脑上的问题 就是不知道哪要改
捕获.PNG
(5.45 KB, 下载次数: 4)
下载附件
2015-5-30 14:46 上传
作者:
rexih
时间:
2015-5-30 14:48
是在本机弄接收和发送的吗?
首先
class UdpSend2
{
public static void main(String[] args) throws Exception
{
DatagramSocket ds = new DatagramSocket();//这里建立UDP的Socket服务时,需要确定一个用于发送的端口号,你接收的端口号是10002,这里改成10000应该是没问题的,只要不是10002就不会冲突
其次如果还不能解决问题:
把发送和接收的类实现Runnable接口,然后用多线程试试。
改过端口应该就没问题了。
UDP如果在本机上测试发送和接收尤其要注意发送的Socket的端口。
作者:
铃铃铃铃铃锋
时间:
2015-5-30 14:49
DatagramPacket dp = new DatagramPacket(buf,buf.length); 这是44行
作者:
铃铃铃铃铃锋
时间:
2015-5-30 14:51
开了Rrce 端口就被建立了 可是一运行Send 接收就出现错误 端口也没了
作者:
山崩地裂
时间:
2015-5-30 15:00
过来学习一下,自己还没学到socket这一块
作者:
铃铃铃铃铃锋
时间:
2015-5-30 17:33
换成Tcp传输也是错的 这次错误提示是select failed 谁来救救我啊
捕获2.PNG
(3.93 KB, 下载次数: 4)
下载附件
2015-5-30 17:32 上传
作者:
林RM
时间:
2015-5-30 17:56
看不懂,怎么办
作者:
铃铃铃铃铃锋
时间:
2015-5-30 20:06
重装了jdk就好了= = 虽然不知道为什么 但是还是很开心 终结~
作者:
lucien_he
时间:
2015-6-1 17:25
学习就是要正视出现的问题 加油
作者:
rexih
时间:
2015-6-1 18:30
唔,才看到,谢谢楼主给了分,不过木有解决楼主的问题2333333333
作者:
土木大戏
时间:
2015-7-9 20:35
顶
要顶
必须顶
不得不顶
用尽全力顶
再加上千斤顶
总之把它顶到顶
接着使出葵花宝顶
就算顶到史前也要顶
老子看了会用道德经顶
孔子亲自拜你为师天天顶
秦始皇站在阿房宫上使劲顶
汉高祖挥师杀向东罗马为你顶
吕布抛弃了貂禅而选择了帮你顶
张三丰见了后用太极拳九式全力顶
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2