[LAJ] Fonction clear

Voir le sujet précédent Voir le sujet suivant Aller en bas

[LAJ] Fonction clear

Message  Simon le Mar 10 Mai 2011, 18:48

Bonjour à vous tous,

Cela fait 2 3 jours que je suis à la recherche d'une petite fonction qui me parait tellement simple qu'elle devrait exister. Mais toutes mes recherches sont veines...
Cette fameuse fonction devrait avoir la même fonction que le clear.
Avec un System.out.print("\033c......."); ça fonctionne.
Seulement ce n'est pas très net comme procédé.
De plus, Java étant multiplateforme et pas cette astuce...
Quel serait le procédé à utiliser pour faire un clear du terminal?
Sous Windows (Et oui c'est fort rependu ce petit truc) ET sous linux.

Merci d'avance pour vos futures réponses.

Simon

Nombre de messages : 12
Prénom : Simon
Statut : Etudiant 1er Gestion.
Date d'inscription : 05/05/2011

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  nvs le Mar 10 Mai 2011, 20:26

Simon a écrit:Avec un System.out.print("\033c......."); ça fonctionne.
Seulement ce n'est pas très net comme procédé.
De plus, Java étant multiplateforme et pas cette astuce...
Quel serait le procédé à utiliser pour faire un clear du terminal?
Sous Windows (Et oui c'est fort rependu ce petit truc) ET sous linux.
en récupérant le propriété os.name puis en agissant de manière idoine.



Like a Star @ heaven

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  jonas le Mar 10 Mai 2011, 20:29

à tout hasard (= pas testé ça fonctionne sans doute pas...)

caractère 'FF' -> Form Feed (saut de page) -> U+000C (12 en base 10)

jonas

Nombre de messages : 234
Prénom : Jonathan
Statut : Ancien industrialisé
Localisation : Devant son clavier BÉPO !
Date d'inscription : 29/09/2008

http://www.xax.be

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  Simon le Mar 10 Mai 2011, 21:23

nvs a écrit:en récupérant le propriété os.name puis en agissant de manière idoine.
De quelle manière agir pour windows? Sous linux, je pourrai conserver le \033c.
Mais il y a t'il un homologue windows?

jonas a écrit:à tout hasard (= pas testé ça fonctionne sans doute pas...)

caractère 'FF' -> Form Feed (saut de page) -> U+000C (12 en base 10)
J'ai chercher un peu. Puis tester. (\f)
Sous netBeans, j'ai une ligne blanche.
Sous console wondows, un caractere assez special qui ferai penser au symbole masculin.


Merci tout de même pour ces réponses rapides.

Simon

Nombre de messages : 12
Prénom : Simon
Statut : Etudiant 1er Gestion.
Date d'inscription : 05/05/2011

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  FûT le Jeu 12 Mai 2011, 20:18

Voici un petit indice quand a l’exécution de commandes sur la console depuis Java. Pourquoi me dirais vous ? Simplement pour exécuter la commande "clear", "cls" ou autre mais je pense qu'il n'y a que celle ci qu'on peut croiser.

JE PRECISE QUE CE CODE N'A ETE TESTE QUE SUR LINUX !!!!!
Cela signifie qu'il est probable que ca ne fonctionne pas sur Windows ...

Après condition quand a l'OS sur lequel on se trouve voici quelques lignes a mémoriser :

Code:
import java.io.ByteArrayOutputStream;
import java.io.InputStream;

/**
 * Allow you to exec a function like "clear" or "cls" specified in first argument
 * @author R.Medaer
 */
public class ClearScreen {
       public static void main ( String[] args ) {
       try {
      int counter;
      ByteArrayOutputStream out = new ByteArrayOutputStream ();
          Process myProcess = Runtime.getRuntime().exec(args[0]);
      InputStream in = myProcess.getInputStream();

      while ((counter = in.read()) != -1) {
          out.write (counter);
      }

      myProcess.waitFor();

      System.out.print(new String (out.toByteArray()));
       } catch (Exception e) {
      System.err.println("Error on clear screen");
       }
   }
}

FûT

Nombre de messages : 118
Age : 26
Prénom : Raphaël
Statut : Etudiant en 3ième indu
Date d'inscription : 10/10/2010

http://ittricks.be

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  nvs le Jeu 12 Mai 2011, 20:40

d'autres se sont posé la question, ici : http://stackoverflow.com/search?q=[java]+clear+console







jocolor

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  FûT le Jeu 12 Mai 2011, 20:50

nvs a écrit:d'autres se sont posé la question, ici : http://stackoverflow.com/search?q=[java]+clear+console

Et la plupart ont tord ... Vive stackOverFlow en mode NOOB !
Ne nous redirigeons pas vers une instanciation quelconque de Wikipedia. L'api est toujours la !

new Source ( new WikiObject ("StackOverFlow")).getInfos () retournera une fois sur deux : NULL !

Traduira qui pourra ! ;-)

FûT

Nombre de messages : 118
Age : 26
Prénom : Raphaël
Statut : Etudiant en 3ième indu
Date d'inscription : 10/10/2010

http://ittricks.be

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  nvs le Jeu 12 Mai 2011, 21:05

et du côté de ProcessBuilder ?






Question

_________________

nvs

Nombre de messages : 5238
Age : 44
Prénom : Nicolas
Statut : prof
Localisation : bxl
Date d'inscription : 24/11/2005

http://nvansteenkiste.googlepages.com

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  Simon le Lun 16 Mai 2011, 19:00

Merci pour vos reponses!
Je reviens juste de vacances. Je testerai tout ceci bientot.
Je vous tiendrai au courant de mes resultats.

Simon

Nombre de messages : 12
Prénom : Simon
Statut : Etudiant 1er Gestion.
Date d'inscription : 05/05/2011

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  pbt le Ven 20 Mai 2011, 09:40

Simon a écrit:Merci pour vos reponses!
Je reviens juste de vacances. Je testerai tout ceci bientot.
Je vous tiendrai au courant de mes resultats.
... et tu préciseras que le sujet est résolu ;-)


Dernière édition par pbt le Ven 20 Mai 2011, 09:40, édité 1 fois (Raison : Orthographe)

_________________
smartq.namok.be · faq ·  · IRC / irc.freenode.net #esi · blog.namok.be
style #pbt {heigth:189cm; weight:79kg; eye-color:#524000; hair:very short; dead pixels: some; }

pbt
Admin

Nombre de messages : 4862
Age : 45
Prénom : Pierre
Statut : prof
Localisation : La cité des géants
Date d'inscription : 24/11/2005

http://esi.namok.be

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  Simon le Ven 20 Mai 2011, 11:42

Fut j'ai enfin eu le temps de tester ce petit code sous Windows.
Il permet bien d’exécuté une commande. Comme dir (ls de linux).
Mais pas le fameux cls.

La commande doit donc s'execute dans une autre fenetre et retourne tout ce qui est ecrit dans la premiere fenetre.
Mais le clear n'ecrit rien. Enfin si "♀" mais n'efface rien Crying or Very sad .


Pour ce qui est du ProcessBuilder. Je ne vois pas comment l'utiliser. Je ne comprend pas trop ce que l'API nous dis.

Simon

Nombre de messages : 12
Prénom : Simon
Statut : Etudiant 1er Gestion.
Date d'inscription : 05/05/2011

Revenir en haut Aller en bas

Re: [LAJ] Fonction clear

Message  Contenu sponsorisé Aujourd'hui à 10:46


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum