java UDP 绑定端口错误?

tobytobe 2010-03-20 09:46:54
03-20 21:35:54.234: WARN/System.err(1772): java.net.BindException: The socket level is invalid
03-20 21:35:54.264: WARN/System.err(1772): at org.apache.harmony.luni.platform.OSNetworkSystem.socketBindImpl(Native Method)
03-20 21:35:54.294: WARN/System.err(1772): at org.apache.harmony.luni.platform.OSNetworkSystem.bind(OSNetworkSystem.java:107)
03-20 21:35:54.324: WARN/System.err(1772): at org.apache.harmony.luni.net.PlainDatagramSocketImpl.bind(PlainDatagramSocketImpl.java:120)

我是在
DatagramSocket ds1 = new DatagramSocket();
int rtpport2=0
//判断port可用否
for(rtpport2 = 3469;rtpport2<=65535;rtpport2++){
try {
Socket s= new Socket("127.0.0.1",rtpport2);
s.close();
break;
} catch (IOException e) {
// TODO Auto-generated catch block
rtpport2++;
continue;
}
ds1.bind(new InetSocketAddress(rtpport2));
...全文
188 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
go372900589 2010-04-05
  • 打赏
  • 举报
回复
学习,学习
yangshaoyu 2010-04-05
  • 打赏
  • 举报
回复
学习了 谢谢
fhuibo212 2010-03-25
  • 打赏
  • 举报
回复
bangding ~~~~~~~~~~~
zoeg 2010-03-25
  • 打赏
  • 举报
回复
如果你只是要随便找个UDP端口:
DatagramSocket ds1 = new DatagramSocket();
这条语句已经搞定了!
zoeg 2010-03-25
  • 打赏
  • 举报
回复
大哥,UDP端口和TCP端口是互相独立的,你用TCP端口可用状态判断UDP端口是否可用.........
而且,DatagramSocket ds1 = new DatagramSocket();构造的时候就已经绑定了一个系统给定的端口,不能重新绑定了!
要测试是否可用:DatagramSocket ds1 = new DatagramSocket(rtpport2);
如果没有抛出异常就表示可用,有异常再针对性处理下就OK了!!!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧