Exécuter DOS à partir d'un code java

miagiste84 Messages postés 2 Date d'inscription mardi 9 décembre 2008 Statut Membre Dernière intervention 16 mars 2009 - 14 mars 2009 à 13:17
safatu Messages postés 14 Date d'inscription mercredi 20 janvier 2010 Statut Membre Dernière intervention 13 avril 2010 - 13 avril 2010 à 23:21
bonjour,

je travaille sur textmining et j'ai utilisé treetagger comme étiqueteur

cet étiqueteur s'exécute sous dos donc j'ai voulu l'intégrer dans un code java.

Code :
 
import java.io.*;
publicclass TreeTagger {
publicstaticvoid main(String argv[]){
try{
String line;
String ch="C:\\WINDOWS\\System32\\cmd.exe";
String ch1= "C:\treetagger";
String ch2="tokenise-fr.pl cv_soumaya.txt | bin\tree-tagger.exe lib\french.par -lemma -token -sgml > resultat-etiquetage.txt";
Process p= Runtime.getRuntime().exec(ch);
Process p1= Runtime.getRuntime().exec(ch1);
Process p2=Runtime.getRuntime().exec(ch2);
//(System.getenv("windir") +"\\system32\"+"tree.com /A");
BufferedReader input =
new BufferedReader
(new InputStreamReader(p2.getInputStream()));
while((line = input.readLine()) != null){
System.out.println(line);
}
input.close();
}
catch(Exception err){
err.printStackTrace();
}
}
 

}
 

mais il a généré des fautes en exécution

Code :
 
java.io.IOException: Cannot run program "C:": CreateProcess error=5, Accès refusé
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at java.lang.Runtime.exec(Runtime.java:593)
at java.lang.Runtime.exec(Runtime.java:431)
at java.lang.Runtime.exec(Runtime.java:328)
at TreeTagger.main(TreeTagger.java:19)
Caused by: java.io.IOException: CreateProcess error=5, Accès refusé
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(ProcessImpl.java:81)
at java.lang.ProcessImpl.start(ProcessImpl.java:30)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:452)
... 4 more
 
 
 

s'il vous plaît aidez moi à les corriger

n'hésitez pas de m'aider je serai reconnaissante.

merci

2 réponses

benmor Messages postés 49 Date d'inscription jeudi 14 avril 2005 Statut Membre Dernière intervention 27 novembre 2011 9
14 mars 2009 à 14:32
Je crois qu'il manque juste des "" :

import java.io.*;
publicclass TreeTagger {
publicstaticvoid main(String argv[]){
try{
String line;
String ch="C:\\WINDOWS\\System32\\cmd.exe";
String ch1= "C:\\treetagger";
String ch2="tokenise-fr.pl cv_soumaya.txt | bin\\tree-tagger.exe lib\\french.par -lemma -token -sgml > resultat-etiquetage.txt";
Process p= Runtime.getRuntime().exec(ch);
Process p1= Runtime.getRuntime().exec(ch1);
Process p2=Runtime.getRuntime().exec(ch2);
//(System.getenv("windir") +"\\system32\"+"tree.com /A");
BufferedReader input =
new BufferedReader
(new InputStreamReader(p2.getInputStream()));
while((line = input.readLine()) != null){
System.out.println(line);
}
input.close();
}
catch(Exception err){
err.printStackTrace();
}
}
 

}
0
safatu Messages postés 14 Date d'inscription mercredi 20 janvier 2010 Statut Membre Dernière intervention 13 avril 2010
13 avril 2010 à 23:21
Bonjour,
il y a une periode que j'essai de faire fonctionné treetagger dans mon application java sur eclipse et ça ne marche
je vien de trouvé ton code et je l'ai integrer mais ça n fonctionne pas
voila les exceptions:
java.io.IOException: Cannot run program "C:\treetagger": CreateProcess error=5, Accès refusé
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at treetagger.main(treetagger.java:11)
Caused by: java.io.IOException: CreateProcess error=5, Accès refusé
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 5 more
SVP,est ce que vous pouvez m'aidez!!!!!
Merci
0
Rejoignez-nous