解決済みのQ&A
Javaであるポートが使用可能か調べるにはどうしたらいいですか?
Javaであるポートが使用可能か調べるにはどうしたらいいですか?
-
- 質問日時:
- 2011/7/7 02:17:17
-
- 解決日時:
- 2011/7/21 07:08:03
-
- 閲覧数:
- 967
- 回答数:
- 1
-
- お礼:
- 知恵コイン
- 50枚
ベストアンサーに選ばれた回答
Java6から追加された、ServerSocketクラスを使用すると簡単にできます。
ServerSocketにポート番号を指定してnewした際に、既に使用されているソケットであれば、java.net.BindExceptionが返ります。
これを利用すれば、使用可能か調べることができます。
boolean canUse(int port){
java.net.ServerSocket ss =null;
boolean ret = false;
try{
ss = new java.net.ServerSocket(port);
//portが開けた
ret=true;
}catch(java.net.BindException e){
//portが使用済み
}catch(java.io.IOException e){
//なんか特別なエラーが起こった
e.printStackTrace();
}finally{
if(ss!=null)try{ss.close();}catch(Exception e){}
}
return ret;
}
- 回答日時:2011/7/7 11:16:37
この質問は投票によってベストアンサーが選ばれました!
あなたにおすすめの解決済みの質問
- ポートスキャニング攻撃が検出されるのですが、その攻撃元?ソースが自分のネットワーク内のIPアドレスで...
- ポート開放ルータはWHR-G301Nを使っています。ONUとWHR-G301Nがつながっている状態です。ONUとPCを直接...
- ポート開放についてポート開放をしたいのですが、調べていくうちまずIPアドレスを固定しようと思いまし...
- ポート開放はできたのですが、時間が経つと閉じてしまいます。ポート開放ができているかチェックするサ...
- ポートの開放ができません。ポートを開放するため、様々なサイトを参照して下記のところまで設定してみ...