Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Java

Maîtriser la classe PrintStream de Java : print, println et printf expliqués

Maîtriser la classe PrintStream de Java : print, println et printf expliqués

La classe PrintStream, du package java.io, étend OutputStream et est conçue pour produire du texte lisible par l'humain plutôt que des octets bruts.


Comment fonctionne PrintStream

Contrairement aux autres flux, PrintStream convertit les valeurs primitives (int, char, etc.) en texte formaté avant de les écrire. Elle ne lève jamais d'IOException ; les erreurs sont signalées via checkError().

L'auto-flush est une fonctionnalité clé : le flux se vide automatiquement quand :


Création d'un PrintStream

Importez la classe :

import java.io.PrintStream;

1. Depuis un OutputStream existant

// Exemple : encapsulation d'un FileOutputStream
FileOutputStream fos = new FileOutputStream("log.txt");
PrintStream ps = new PrintStream(fos, true); // true = autoFlush

Écrit du texte formaté dans log.txt avec auto-flush optionnel.

2. Directement depuis un nom de fichier

PrintStream ps = new PrintStream("log.txt", true);

Le constructeur accepte un booléen pour l'auto-flush. Par défaut, le flux utilise l'encodage de la plateforme.

3. Spécification d'un jeu de caractères

PrintStream ps = new PrintStream("log.txt", true, StandardCharsets.UTF_8);

L'utilisation de Charset permet de choisir UTF-8, UTF-16 ou tout encodage supporté.

Note : Pour plus de détails sur les jeux de caractères, voir API Java Charset.


Méthodes principales de PrintStream

print() et println()

Exemple : Utilisation de System.out

public class Main {
    public static void main(String[] args) {
        System.out.print("Hello World.");
    }
}

System.out est un PrintStream préconfiguré, sa méthode print() est immédiatement disponible.

Exemple : Écriture dans un fichier

import java.io.PrintStream;

public class Main {
    public static void main(String[] args) {
        try {
            PrintStream ps = new PrintStream("output.txt");
            ps.print("Ceci est un texte dans le fichier.");
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Le fichier output.txt résultant contient :

Ceci est un texte dans le fichier.

printf()

Affiche du texte formaté avec des spécificateurs de format :

System.out.printf("J'ai %d ans", 25);

%d est remplacé par la valeur entière 25.

Exemple : Utilisation de printf() avec un fichier

import java.io.PrintStream;

public class Main {
    public static void main(String[] args) {
        try {
            PrintStream ps = new PrintStream("output.txt");
            int age = 25;
            ps.printf("J'ai %d ans.", age);
            ps.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Après exécution, output.txt contient :

J'ai 25 ans.

Méthodes supplémentaires de PrintStream

MéthodeDescription
close()Ferme le flux et libère les ressources système
checkError()Renvoie true si le flux a rencontré une erreur
append()Ajoute la séquence de caractères spécifiée au flux

Pour les détails complets, consultez la documentation officielle Java PrintStream.

Java

  1. Comprendre le mot-clé final en Java : variables, méthodes et classes
  2. L'opérateur instanceof en Java : guide complet
  3. Comprendre les classes imbriquées statiques en Java : utilisation, différences et exemples
  4. Maîtriser les classes internes anonymes en Java : définition, syntaxe et exemples pratiques
  5. Le pattern Singleton en Java expliqué : implémentation et utilisation sûre
  6. Maîtriser la réflexion Java : inspection des classes, méthodes et champs à l'exécution
  7. Maîtriser Java ObjectOutputStream : Sérialisation, méthodes et exemples pratiques
  8. Maîtriser les génériques Java : Construire du code réutilisable et type-safe
  9. Maîtriser les opérations sur les fichiers Java avec java.io – Création, lecture, écriture et suppression