http://www.gaudry.be/���lundi 13 février 2012 ������������L'infobrol




  • Accueil
  • Sommaire
  • Rechercher
  • Contact
  • Forum
  • Niouzes
  • Astuces
  • NewsBrol

Pr�c�denteSuivante

�

Les streams standards en Java

Il existe des streams standards, accessibles de manière statique depuis la classe java.lang.System. Ils permettent les interactions au travers de la console, et du clavier.

System.in

public static final InputStream in

Permet de saisir les entrées clavier. En mode console, la lecture d'une ligne est une méthode bloquante : le processus est bloqué en attente que l'utilisateur presse la touche enter..

System.out

public static final PrintStream out

Permet d'afficher dans la console sous forme de String un objet (si toString() n'est pas implémenté pour ce type d'objet, un affichage est prévu, basé sur l'adresse mémoire de l'objet) ou un type primitif. Dans la console d'Eclipse, l'affichage se fait en bleu.



Haut de la page

System.err

public static final PrintStream err

Permet d'afficher dans la console sous forme de String un objet ou un type primitif, mais sera utilisé par convention pour afficher des messages d'erreurs. Dans la console DOS, nous ne remarquons pas de différences entre out et err, mais dans la console d'Eclipse, l'affichage d'err se fait en rouge.



Haut de la page

Rediriger les flux standards

Avant de rediriger un des trois flux standards, il est préférable de le maintenir sous forme de variable pour le réinitialiser par la suite.

Trois méthodes statiques de la classe java.lang.System nous permettent de modifier les flux standards :

public static void setIn ( InputStream  in)

Utilise la source de l'InputStream passé en argument au lieu de la source du stream standard (System.in).

public static void setOut ( PrintStream  out)

Redirige la sortie du stream standard System.out vers le PrintStream passé en argument.

public static void setErr ( PrintStream  err)

Redirige la sortie du stream standard System.err vers le PrintStream passé en argument.

 

Exemple

Code Java :
Cliquez ici pour afficher/masquer le code
  1. import java.io.*;
  2.  
  3. public class FileToFile {
  4.  
  5. public static void copyFile(File fFrom,File fTo) throws IOException{
  6. PrintStream originalOut = System.out;
  7. InputStream originalIn = System.in;
  8. InputStream sIn = new FileInputStream(fFrom);
  9. PrintStream sOut = new PrintStream(fTo);
  10. System.setIn(sIn);
  11. System.setOut(sOut);
  12. while(sIn.available()>0){
  13. char c = (char)System.in.read();
  14. //print to screen
  15. System.setOut(originalOut);
  16. System.out.print(c);
  17. //print to file
  18. System.setOut(sOut);
  19. System.out.print(c);
  20. }
  21. System.setIn(originalIn);
  22. System.setOut(originalOut);
  23. }
  24. public static void main(String[] args) {
  25. File fFrom = new File("outputFiles/first.txt");
  26. File fTo = new File("outputFiles/output.txt");
  27. try {
  28. copyFile(fFrom,fTo);
  29. } catch (IOException e) {
  30. e.printStackTrace();
  31. }
  32. }
  33. }
Retourner au début du code


Haut de la page

Pr�c�denteSuivante

�



[signaler une erreur, une fote d'ortograf, consulter ou �crire un commentaire]

� Ce document issu de l′infobrol est enregistr� sous le certificat Cyber PrInterDeposit Digital Numberection. Enregistrement IDDN n� 5329
St.Gaudry�07.01.02 : Document cr�� le 24/06/2005 (derni�re modification le 17/06/2011)
Source du document imprim� : http://www.gaudry.be/_pge/java-stdstreams.php
, affich� 15 fois ce mois de février._

Recherche :

��
  • Navigation
  • Services
  • Le site
  • Matériel informatique
  • Généralités Informatique
  • Généralités OS
  • Systèmes d'exploitation
  • UNIX - Linux
  • Windows NT
  • Windows 2000
  • Programmes
  • Office
  • VBA - VBS
  • Généralités réseau
  • Normes et standards
  • Modèle OSI
  • Stat - Proba
  • Logique
  • Matrices
  • Graphes
  • Analyse
  • SGBD
  • Cryptologie
  • Compilateurs
  • Programmer
  • Programmation déclarative
  • Java
    • Tableaux
    • Les classes
    • Mots clés
    • Collections
    • API 1.5
    • packages Java
    • API JFreeChart
    • API jdom
    • API JUnit
    • API JavaMail
    • Javadoc Struts
    • Tags Struts
    • Trier en Java
    • Les flux
    • ByteStreams
    • Flux standards
    • PrintStream
    • package java.net
    • URL en Java
    • URLConnection
    • Protocol Handler
    • URLStreamHandler
    • Struts memento
    • Struts Web Exemple
    • Exercices Java
    • Ex LetterGrade
    • Ex VowelCase
    • Ex MyNumber
    • Ex Triangle
    • Ex NumberCruncher
    • Ex SellingHouses
    • Ex AbstractSorter
  • API Java
  • C & C++
  • C Sharp
  • Visual Studio
  • .NET
  • SGML HTML XML
  • CSS
  • Optimisation Web
  • Fun Web
  • PHP - MySQL
  • Manuel PHP
  • Le Web en vrac
  • Introduction au JavaScript
  • Objets JavaScript
  • JavaScript en vrac
  • Le brol du brol
  • Glossaire
  • Divertissement
  • �

    Apparence :

    Membres :

    Connexion

    Nouveaux :

    S'enregistrer

�

Infos :

15179 documents (?)
451 astuces.
549 niouzes.
3099 d�finitions.
1899 membres.
7462 messages.
Document g�n�r� en :
0.1566 seconde