Executer une commande sur le cmd à travers java(eclipse)
Résolu
somaya1
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
Souma -
Souma -
Bonjour,
je veux executer ces deux commandes sur le cmd successivement
et afficher le resultat de cmd ('l'invite de commandes") dans un fichier
puis
le code suivant est le code que j'ai essayé mais le fichier est vide malgrés que j'ai executé ces deux commandes sur le cmd et m' affiché le result.
ce m'affiche pas aucune message d'erreur mais le fichier resultat vide.
mem si vous n'avez pas idée sur le role de ces deux commande
comment je execter deux commandes successivement.
et merciiiiiiiiiiiiiiiiiiii d'avance.
je veux executer ces deux commandes sur le cmd successivement
et afficher le resultat de cmd ('l'invite de commandes") dans un fichier
cd C:\Program Files (x86)\Indri\Indri 2.2\bin
puis
IndriRunQuery C:\Users\Zeyd\workspace\WebSem\test.txt
le code suivant est le code que j'ai essayé mais le fichier est vide malgrés que j'ai executé ces deux commandes sur le cmd et m' affiché le result.
ce m'affiche pas aucune message d'erreur mais le fichier resultat vide.
File f3=new File("result.txt"); String pthtest="C:\\Users\\Zeyd\\workspace\\WebSem\\test.txt"; String command= "cmd /c C:\\Program Files (x86)\\Indri\\Indri 2.2\\bin\\IndriRunQuery"+" "+ pthtest; try { Process child = Runtime.getRuntime().exec(command); child.waitFor(); BufferedReader input =new BufferedReader(new InputStreamReader(child.getInputStream())); BufferedWriter output=new BufferedWriter(new FileWriter(f3)); while((line = input.readLine()) != null) try{ System.out.println("line"+line); output.write(line); output.write("\r\n"); output.flush(); output.close(); } } catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); }
mem si vous n'avez pas idée sur le role de ces deux commande
comment je execter deux commandes successivement.
et merciiiiiiiiiiiiiiiiiiii d'avance.
A voir également:
- Cmd java -cp
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Cmd - Guide
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
2 réponses
SVP j'ai testé ce code il m'affiche un message d'erreur
..\src\Parameters.cpp(484): Had trouble parsing parameter file 'C:/Users/taibah university/Desktop/test.txt'
..\src\Parameters.cpp(399): NO XML in parameter text
quel est le problème car je suis débutante et j'ai moins d'informations
..\src\Parameters.cpp(484): Had trouble parsing parameter file 'C:/Users/taibah university/Desktop/test.txt'
..\src\Parameters.cpp(399): NO XML in parameter text
quel est le problème car je suis débutante et j'ai moins d'informations
mais j'ai fait System.out.println(child.getErrorStream())
il m'a affiché ça
java.io.FileInputStream@27573872
mais d'abord est ce que le code que j'ai executé en haut ne comporte pas d'erreur!!
et merciiiiiiiiii
Sinon, avec ton programme il y aurait bien des choses à en dire, entre l'utilisation de BufferedReader, mais ça ne devrait pas empêcher ton programme de fonctionner.
Par contre ta commande "cmd /c C:\\Program Files (x86)..." à mon avis elle est fausse.
D'une part à cause des espaces dans "C:\\Program Files" qui fait que "cmd" va considérer "C:\\Program" et "Files" comme deux arguments différents. D'autre part l'utilisation même de "cmd" qui ne sert à rien. Il vaut mieux appeler directement le programme IndriRunQuery.
Quant au "cd" il se fait directement en passant un paramètre à exec. Les autres paramètres de exec permettent également de donner les arguments de la commande dans un tableau ce qui évite le problème avec les espaces comme dans "Program Files"
Je recommence :
ce code marche bien .
j'ai essayé aussi de changer la commande dans mon ancien code comme suit
String commande=cmd /c IndriRunQuery"+ pthtest;
et ça marche aussi.
comme vous avez dit le cd se fait automatiquement sans qu'on a besoin de lui donner le chemin.
merciiiiiiiiii encore.