bonjour,
je désire savoir s'il existe un moyen en java pour savoir si un port est ouvert.
j'ai une solution pas très propre qui consiste à tenter la création d'un socketServer avec le port qui m'intéresse. Et si une exception est levée alors cela signifie que le port est occupé et ma méthode s'arrête. sinon je ferme la socket précédement créée pour ensuite utiliser mon port.
voici mon code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//test pour savoir si le port est déjà utilisé
        ServerSocket test = null;
 
        try{
            test = new ServerSocket(port);
        }catch(Exception e){
            //port occupé --> fin de la méthode
            System.out.println("erreur");
            stop();
        }
 
        //le port n'est pas utilisé
        try {
            //fermeture du port
            test.close();
        }
        catch (IOException e2) {
        }
 
       //ma méthode peut utiliser le port
Cette solution est pas très belle. Aussi je recherche une méthode java plus simple.
En vous remerciant d'avance