Récupérer le résultat d'une commande dans une JTextArea ?

Résolu
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008 - 14 mars 2008 à 13:58
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 - 18 mars 2008 à 15:41
Bonjour,
j'ai un code java qui  exécute la commande "tasklist" sous XP;

String cmd2;
cmd2="tasklist";
 try{
            Process proc = Runtime.getRuntime().exec(cmd2);
           
             BufferedReader r1 = new BufferedReader(
                        new InputStreamReader(proc.getInputStream())
             );
                String x;
                while ((x = r1.readLine()) != null) {
                System.out.println(x);
             }
             r1.close();

Comment modifier ce bout de code pour pouvoir afficher le résultat de cette commande dans une JTextArea ?
A voir également:

15 réponses

Utilisateur anonyme
17 mars 2008 à 20:40
bonjour,

Au minimum :

je remplacerais

                infoArea1.append(x);
                   infoArea1.append("--------------------------------------------------------------------------" );
 par




                infoArea1.append(x + "\n");
                   infoArea1.append("--------------------------------------------------------------------------\n" );


Une petite question : d'ou viennent les ========================= ====== ================ ======== ============ ?

Cordialement.



...\ Dan /...
3
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
14 mars 2008 à 14:09
System.out.println(x); ==> tu le change pour que ca appel une methode qui ajoute le contenu de x dans un JTextArea

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
Utilisateur anonyme
14 mars 2008 à 15:56
Salut,

Quelque chose comme   
         nom_JTextArea.append(x);

Cordialement.

...\ Dan /...
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
14 mars 2008 à 19:00
booo faut les laisser chercher un peu :p

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008
14 mars 2008 à 22:34
Merci beaucoup pour votre aide
je vais essayer puis vous dire est ce que ça fonctionne ou pas
0
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008
14 mars 2008 à 23:04
salut,
en fait j'ai essayer le truc avec append(), mais l'affichage n'est pas bon; les lignes ne sont pas distinctes, en plus la taille du JTextArea ne convient pas à la quantité de donnée donc pas mal de ligne ne sont pas affichées, est ce que je dois changer les propriétés du JTextArea ? ou dois je jouer sur la méthode à utiliser pour l'affichage ? et est ce que c'est possible de modifier le résultat de la commande tasklist par des parametres pour n'afficher que les informations nécéssaires
et merci à vous tous
0
Utilisateur anonyme
15 mars 2008 à 07:43
salut sheorogath,

c'est vrai, pardon , mais je me rend compte qu'il doit "encore" chercher !
...\ Dan /...
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
15 mars 2008 à 13:33
heu peux tu faisun screen du resultat


je vois pas du tout ce que tu as

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008
15 mars 2008 à 17:19
Excusez moi mais comment faire pour vous envoyer une capture ecran ?
0
Utilisateur anonyme
16 mars 2008 à 10:43
Salut,


Avec ta souris, tu cliques sans relacher le bouton (gauche) en haut et a gauche du texte de la TextArea et tu descends jusqu'en bas du texte (dernier caractere de la derniere ligne). Ensuite Ctrl et sans relacher c : ton texte est dans le presse papier.

Il ne te reste plus qu'a le coller dans ton message par Ctrl v ou coller (+ d'options).

Cordialement.



...\ Dan /...
0
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008
17 mars 2008 à 10:37
bonjour,

voici ce que m'affiche la JTextArea;

--------------------------------------------------------------------------Nom
de
l'image             
PIDÿ Nom de la sessio Num‚ro d Utilisation
--------------------------------------------------------------------------=========================
==== ================ ========
==========--------------------------------------------------------------------------System
Idle
Process           
0
Console                
0        16
Ko--------------------------------------------------------------------------System                        
4
Console                
0       240
Ko--------------------------------------------------------------------------smss.exe                    
428
Console                
0       372
Ko--------------------------------------------------------------------------csrss.exe                   
488
Console                
0     5ÿ600
Ko--------------------------------------------------------------------------winlogon.exe                
516
Console                
0     3ÿ944
Ko--------------------------------------------------------------------------services.exe                
560
Console                
0     3ÿ772
Ko--------------------------------------------------------------------------lsass.exe                   
572
Console                
0     7ÿ356
Ko--------------------------------------------------------------------------svchost.exe                 
752


et voici le bout de code;

String cmd2;


        cmd2="tasklist";


        


        try{


            Process proc = Runtime.getRuntime().exec(cmd2);


            


             BufferedReader r1 = new BufferedReader(


                       
new InputStreamReader(proc.getInputStream())


             );


                String x;


               
while ((x = r1.readLine()) != null) {


               
//infoArea1.append("--------------------------------------------------------------------------\n"
);


                infoArea1.append(x);


              
   
infoArea1.append("--------------------------------------------------------------------------"
);


                


             }


             r1.close();


            // proc.waitFor();


          


            


        }


        catch (IOException t)


        {}


est ce qu'il ya s'il vous plait une méthode d'ameliorer l'affichage ?
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
17 mars 2008 à 13:36
non a moins dessayer avec un JTextPane ... je sasi pas si ca serait mieu ...

sinon non tout a la main ^^

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008
18 mars 2008 à 13:07
bonjour,

merci danimo, c'est mieux avec votre truc mais la taille du JTextArea
est fixe donc les données ne s'affichent pas toutes, moi je travail
avec JCreator donc j'ai pas un éditeur graphique comment je peut rendre
la taille du JTextArea proportionelle à la quantité de données ,

à bientôt
0
cs_cosworth Messages postés 40 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 16 mai 2008
18 mars 2008 à 13:07
bonjour,

merci danimo, c'est mieux avec votre truc mais la taille du JTextArea
est fixe donc les données ne s'affichent pas toutes, moi je travail
avec JCreator donc j'ai pas un éditeur graphique comment je peut rendre
la taille du JTextArea proportionelle à la quantité de données ,

à bientôt
0
sheorogath Messages postés 2448 Date d'inscription samedi 21 février 2004 Statut Modérateur Dernière intervention 29 janvier 2010 17
18 mars 2008 à 15:41
quand tu ajoutes ton infoArea1 ajoute plutot

new JScrollPane( infoArea1)

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
0
Rejoignez-nous