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

Entrée/Sortie Java Discussion :

Communication avec une application externe


Sujet :

Entrée/Sortie Java

  1. #1
    Membre actif Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Points : 227
    Points
    227
    Par défaut Communication avec une application externe
    Bonjour.

    J'ai lu différents topics sur le lancement d'applications externe mais je n'ai pas trouvé mon bonheur

    A la base je voulais créer un petit script en batch mais les possibilités ne sont pas assez étendue.

    J'aimerais donc lancer une invite de commande msdos a partir d'un programme java (jusque là, tout va bien) et récupérer les input/outputStream pour communiquer avec elle... Mais je n'y arrive pas.

    Je ne comprend pas trop le méchanisme.
    Je pensais à la base instancier un nouveau Process, récupérer les flux puis lancer le processus en lui même mais apparement ce n'est pas la bonne méthode ...

    Qqun saurait m'aider?

    Merci d'avance

  2. #2
    Membre habitué Avatar de Oui-Oui MB
    Homme Profil pro
    Architecte technique
    Inscrit en
    Avril 2005
    Messages
    111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Avril 2005
    Messages : 111
    Points : 127
    Points
    127
    Par défaut
    Il faut que tu lances le Process et puis tu récupères les flux juste après.

    Exemple :
    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
    // .....
    Runtime r = Runtime.getRuntime();
    Process p = r.exec(cmd);
     
    InputStream is = p.getInputStream();
    File fout = new File(fileName);
    FileOutputStream fos = new FileOutputStream(fout);
     
    int BUFFER = 512;
    byte[] buff = new byte[BUFFER];
    int count = 0;
    while ((count = is.read(buff, 0, BUFFER)) != -1)
    {
       fos.write(buff, 0, count);
    }
     
    p.waitFor();
    fos.close();
    //..........
    Que la Schtuche soit avec vous !!!

  3. #3
    Membre actif Avatar de Lethal
    Profil pro
    Développeur Java
    Inscrit en
    Février 2006
    Messages
    194
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2006
    Messages : 194
    Points : 227
    Points
    227
    Par défaut
    Merci beaucoup!!!

    Inpres?

  4. #4
    Débutant
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 496
    Points : 149
    Points
    149
    Par défaut
    Citation Envoyé par Oui-Oui MB
    Il faut que tu lances le Process et puis tu récupères les flux juste après.

    Exemple :
    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
    // .....
    Runtime r = Runtime.getRuntime();
    Process p = r.exec(cmd);
     
    InputStream is = p.getInputStream();
    File fout = new File(fileName);
    FileOutputStream fos = new FileOutputStream(fout);
     
    int BUFFER = 512;
    byte[] buff = new byte[BUFFER];
    int count = 0;
    while ((count = is.read(buff, 0, BUFFER)) != -1)
    {
       fos.write(buff, 0, count);
    }
     
    p.waitFor();
    fos.close();
    //..........
    J'ai peut-être le même problème

    voici la place du code où ça pêche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Runtime runtime = Runtime.getRuntime();
                Process process = Runtime.getRuntime().exec(new String[] { "titi.sh*" , "adresse_email" } );
                InputStream in = process.getInputStream();
    Mon script titi.sh a tous les droits d'acces.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD14] Ouvrir un fichier avec une application externe via LanceAppli()
    Par Fastolph dans le forum WinDev
    Réponses: 13
    Dernier message: 28/09/2011, 09h26
  2. [Android] Communication avec une application tierce
    Par S.Jihad dans le forum Android
    Réponses: 2
    Dernier message: 17/05/2011, 15h31
  3. Communication avec une application .Net
    Par koyot3 dans le forum Langage
    Réponses: 1
    Dernier message: 18/04/2011, 10h57
  4. Réponses: 6
    Dernier message: 20/05/2010, 16h02
  5. liaison avec une application externe.
    Par adicor dans le forum MFC
    Réponses: 8
    Dernier message: 05/05/2006, 14h32

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