Commande dos depuis le code java [Résolu]

Signaler
Messages postés
19
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2011
-
Messages postés
19
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2011
-
bonjour;

j'ai besoin dans mon app java de faire un appel à un logiciel qui permet de dessiner des graphe(fichier .JPG) à partir d'un fichier d'entrée(fichier.dot)(ce logiciel s'appelle graphviz)

pour cela je dois me positionner dans le bin de graphviz(commande DOS: "cd C:\Program Files\Graphviz2.26.3\bin")et lancer la commande:
dot -Tjpg -omonImage.jpg monGraphe.dot

je veux savoir comment faire cela dans java,càd me position dans le bin de graphviz et lancer la commande appropriée.
merci bcp de votre aides

4 réponses

Messages postés
5348
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
30 mars 2020
95
Salut,

oui le 'cd' ne sera pas possible pour ensuite exec ta commande... si tu veux spécifier un working dir regarde du coté des méthodes exec qui prennent un param File (vf la javadoc...)

exemple :
Runtime run = Runtime.getRuntime();
// p uniquement si tu veux manier les fkux de ton apps
Process p = run .exec("dot -Tjpg -omonImage.jpg monGraphe.dot", null, new File("C:\\Program Files\\Graphviz2.26.3\\bin"));
// ou encore
Process p = run .exec(new String [] { "dot", "-Tjpg", "-omonImage.jpg", "monGraphe.dot"}, null, new File("C:\\Program Files\\Graphviz2.26.3\\bin"));



enfin un truc du genre quoi.




------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Messages postés
5348
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
30 mars 2020
95
Salut,

Regarde du coté des méthodes exec(...) de la classe java.lang.Runtime et si tu dois récupérer les streams de l'application regarde également du coté de la classe java.lang.Process (cet objet est retourné par les méthodes exec de l'objet Runtime).




------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Messages postés
19
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2011
1
bonjour;
merci twintus d'avoir me repondu;
mon probleme exactement est comment ecrire la commande pour l'envoyer comme parametre de la methode exec(String cmd)(ou String[]cmds)

j'ai essayé avec: ...exec("cd C:\Program Files\Graphviz2.26.3\bin");
...exec("dot -Tjpg -omonImage.jpg monGraphe.dot");
mais ça ne fonctionne pas;
merci bcp de me repondre.
Messages postés
19
Date d'inscription
samedi 20 décembre 2008
Statut
Membre
Dernière intervention
20 mai 2011
1
bonjour;
j'ai essayé avec ce que vous m'avez dit et ça a bien marché
merci bcp de votre aide Twinuts,grace à toi G reglé le pbm;