站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题获得SOCKET端口的简单问题!

获得SOCKET端口的简单问题!

摘要: 获得SOCKET端口的简单问题!


想做一个SOCKET客户端,在不知道目的地的情况下,怎么能利用空闲端口打开一个SOCKET,是不是如下的实现方式:

SocketServer fromSocketServer = new ServerSocket(0);
Socket socket = fromSocketServer.accept();

如果不用SocketServer,直接用Socket来实现可以吗?


Socket的取得有两种方法,一种是去连别人,二是自己做服务器接受别人的连接
这二者都可以返回一个Socket引用
1,Socket s=new Socket(-#34;192.168.1.5-#34;,5555);
2,ServerSocket ss=new ServerSocket(10000);
Soxket s=ss.accept();
得到它们的端口就更简单了
getPort()
返回此套接字连接到的远程端口。
getLocalPort()
返回此套接字绑定到的本地端口。


楼上的,看清我的问题
第一,目的地现在不能知道,要以后才知道,
第二,可用的空闲端口要用程序来获得,不是已经指定好的!


第一,目的地现在不能知道,要以后才知道,
可以用udp,或者就是serversocket
第二,可用的空闲端口要用程序来获得,不是已经指定好的!
for(int i=1024;i-#60;=6000;i++){
try{
Socket s=new Socket(-#34;127.0.0.1-#34;,i);
}catch(Expection e){
System.out.println(-#34;端口-#34;+i+-#34;已经占用-#34;)
}
}


楼上的,你的这段代码我看到过,不过不能满足我的要求!
我的帖子里说了,用下面的方法:
SocketServer fromSocketServer = new ServerSocket(0);
Socket socket = fromSocketServer.accept();

可是现在不想用SocketServer,有没有别的方式能直接实现这个功能!


还有,连接必须是TCP的


↑返回目录
前一篇: 请问链接怎么做为参数传递
后一篇: 怎样在java中调用这段c++代码,大侠帮我看看啊