IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

S.V.P expliquez moi ce code


Sujet :

avec Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2009
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 42
    Points : 30
    Points
    30
    Par défaut S.V.P expliquez moi ce code
    Bonjour,
    j'ai télécharger un programme du net mon but est de trouvé un code qui permet de faire testes sur des ports d'une machine distante pour savoir s'il sont en écoute ou non en un temp meilleur
    voila ce programme il marche très bien me je comprend pas la résultat
    merci de me l'expliquer et de me le modifier afin qu'il rependrai a mes besoins
    classe Ping
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    import java.io.*;
    import java.net.*;
    import java.nio.channels.*;
     
     
    public class Ping {
     
    private static int timeout; // Timeout in ms for pinging
    private static Target t;
    private static SocketChannel sc;
     
    // Representation of a ping target
    private static class Target {
     
    public InetSocketAddress address;
    public SocketChannel channel;
    public long connectStart;
    public long connectFinish = 0;
    public Exception failure = null;
     
    public Target(String host, int port) throws IOException 
    {
    address = new InetSocketAddress(InetAddress.getByName(host), port);
    }
     
    public long getPing() throws IOException, InterruptedException
    {
    if (connectFinish != 0)
        return connectFinish - connectStart;
    else if (failure != null)
    if (failure instanceof IOException) throw (IOException) failure;
    else if (failure instanceof InterruptedException)throw (InterruptedException) failure;
    else
    return -2; //should not happen
    el le main pour tester il faut juste modifier l'adresse ip
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    package timeout;
    import java.io.IOException;
    public class Main 
    {
        public static void main(String[] args) throws InterruptedException, IOException
        {
        Ping p = null;
        System.out.println(p.ping("127.0.0.1", 3306, 4000)); //host,port, timeout in ms
        }
     
     
    }
    merci bonne soirée

  2. #2
    Modérateur
    Avatar de wax78
    Homme Profil pro
    Chef programmeur
    Inscrit en
    Août 2006
    Messages
    4 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 074
    Points : 7 978
    Points
    7 978
    Par défaut
    "voila ce programme il marche très bien me je comprend pas la résultat"
    -- > mon oeil

    Mis à part les erreurs de compilation que tu vas avoir (static avec getPing() pas en static), ton truc se connecte (ou non) a un port sur une machine distante, et donc ferait exactement ce que tu demanderait si ce n'etait pas tout bancal.

    En fait tu peux tout réecrire a mon avis et juste garder [new InetSocketAddress(InetAddress.getByName(host), port);] ^^

    Jette un coup d'oeil aussi a http://java.developpez.com/faq/java/...au#RESEAU_ping

    Sinon:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Socket c = new Socket(InetAddress.getByName("127.0.0.1"), 3306);
    System.err.println(""+c.isConnected());
    Avec ce petit bout de code qu'il faudra agrémenter de diverses choses, tu pourras faire ce que tu veux.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Expliquez moi ce code
    Par soumia1988 dans le forum Langage
    Réponses: 1
    Dernier message: 17/03/2007, 01h35
  2. Réponses: 10
    Dernier message: 04/10/2006, 19h50
  3. aidez moi svp,"code source" du jeux serpent
    Par joshkof dans le forum C++
    Réponses: 3
    Dernier message: 24/05/2006, 11h03
  4. Expliquez moi ça svp !
    Par adlich dans le forum Langage
    Réponses: 4
    Dernier message: 30/04/2006, 00h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo