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

Langage Java Discussion :

passage d'arguments avec Runtime.exec()


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 13
    Par défaut passage d'arguments avec Runtime.exec()
    bonjour, voilà j'ai un probleme sous linux, j'arrive à passer les arguments sauf sauf pour la redirection de la sortie ne marche pas :
    la premiere partie ça marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     String[] T = {
    		            "./verif.exe",
    		            "input.txt",
    		            "-c",
    		            "output.txt"
     
    		        };
    	       final Runtime runtime = Runtime.getRuntime();
    	       final Process process = runtime.exec(T);
    et la deuxieme ne marche pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     String[] T = {
    		            "./verif.exe",
    		            "input.txt",
    		            "-c",
    		            "> output.txt"
    
    		        };
    	       final Runtime runtime = Runtime.getRuntime();
    	       final Process process = runtime.exec(T);
    est ce que quelqu'un a une idée, merci d'avance

  2. #2
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2007
    Messages : 46
    Par défaut
    Bonjour,

    Au lieu de passer par une redirection "linux" tu peut directement effectué la redirection de l'output par java, par contre ca sera surement un peu plus lourd .

    cf: http://www.developpez.net/forums/sho...d.php?t=383710

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 13
    Par défaut
    merci bien ça a marché, mais j'ai un autre problème lorsque je met des apostrophes pour mon arguments il le reconnais pas

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    String[] T = {
                        "./verif.exe",
                        "input.txt",
                        " 'np>pp' "
     
                    };
               final Runtime runtime = Runtime.getRuntime();
               final Process process = runtime.exec(T);
    et l'equivalent en ligne de commande c'est :
    Code other : Sélectionner tout - Visualiser dans une fenêtre à part
    ./verif.exe input.txt 'np>pp'

  4. #4
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Mai 2007
    Messages : 46
    Par défaut
    essaye d'ecrire les apostrophes avec un \ devant, cad:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String[] T = {"./verif.exe","input.txt"," \'np>pp\' "};
    pour lui faire comprendre que ce sont des caractères spéciaux...(je ne sais plus si les ' sont considérés comme des caractères spéciaux, donc a tester ^^)

  5. #5
    Expert confirmé
    Avatar de le y@m's
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    2 636
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Février 2005
    Messages : 2 636
    Par défaut
    Il n'est pas possible d'utiliser ce type de redirection ('>') avec Runtime.exec().
    Cf Runtime.exec() n'est pas des plus simple...
    Je ne répondrai à aucune question technique par MP.

    Pensez aux Tutoriels et aux FAQs avant de poster ;) (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
    Enfin, quand une solution a été trouvée à votre problème
    pensez au tag :resolu:

    Cours Dvp : http://ydisanto.developpez.com
    Blog : http://yann-disanto.blogspot.com/
    Page perso : http://yann-disanto.fr

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 13
    Par défaut
    merci pour la redirection c'est reglé mais il me reste le probleme des cotes j'ai essayé avec un slash et meme j'ai changé avec des guillemets mais ça marche toujours pas

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Août 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 13
    Par défaut
    là j'ai telechargé l'API shell je trouve que c'est la meilleure solution pour la redirection.
    à la compillation du shell.java de l'Api j'ai des arreurs type:

    Syntax error, parameterized types are only available if source level is 5.0 Shell.java line 113, et je sais pas ce que peeu etre le probleme, ce n'est pas la version de java ?!

    Citation Envoyé par le y@m's
    Il n'est pas possible d'utiliser ce type de redirection ('>') avec Runtime.exec().
    Cf Runtime.exec() n'est pas des plus simple...

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

Discussions similaires

  1. passer des arguments avec Runtime.getRuntime().exec;
    Par firgon dans le forum Débuter avec Java
    Réponses: 0
    Dernier message: 07/11/2008, 07h16
  2. JAVA: arguments avec runtime ne marche pas
    Par aweqqas dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 28/08/2007, 19h17
  3. probleme avec runtime exec
    Par john123 dans le forum API standards et tierces
    Réponses: 9
    Dernier message: 17/07/2007, 11h57
  4. Réponses: 8
    Dernier message: 01/06/2006, 11h14
  5. [VBA-E] passage d'argument avec la méthode "Show"
    Par JOUBERT dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 14/03/2006, 13h56

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