devstory

Le Tutoriel de Java PrintWriter

View more Tutorials:

1- PrintWriter

PrintWriter est une sous-classe de Writer, qui est utilisée pour imprimer des données formatées dans un OutputStream ou un autre Writer qu'il gère.
PrintWriter​ Constructors
public PrintWriter​(File file)    

public PrintWriter​(File file, String csn)    

public PrintWriter​(File file, Charset charset)    

public PrintWriter​(OutputStream out)    

public PrintWriter​(OutputStream out, boolean autoFlush)    

public PrintWriter​(OutputStream out, boolean autoFlush, Charset charset)    

public PrintWriter​(Writer out)    

public PrintWriter​(Writer out, boolean autoFlush)    

public PrintWriter​(String fileName)    

public PrintWriter​(String fileName, String csn)    

public PrintWriter​(String fileName, Charset charset)
Il existe de nombreux constructeurs pour initialiser un objet PrintWriter. Voir ce qui se passe lors de la création d'un PrintWriter dans certaines situations spécifiques:

PrintWriter​(Writer)

Créer un objet PrintWriter pour imprimer des données formatées dans un autre Writer.

PrintWriter​(OutputStream):

Créer un objet PrintWriter pour imprimer des données formatées dans un OutputStream.

PrintWriter​(File file) / PrintWriter​(String fileName)  

Créer un objet PrintWriter pour imprimer des données formatées dans un fichier.
Les caractéristiques de PrintWriter:
Toutes les méthodes de PrintWriter ne lèvent pas d'exceptions d'I/O, pour vérifier si l'exception s'est produite, vous pouvez appeler la méthode checkError().
Si BufferedWriter participe à la structure de PrintWriter, les données seront écrites temporairement dans buffer (de BufferedWriter), qui sera poussé vers le bas pour cibler lorsque buffer est plein (voir l'illustration ci-dessus). Vous pouvez pousser de manière proactive les données dans la cible en appelant la méthode PrintWriter.flush().
Si PrintWriter est créé avec la fonction autoFlush activée, les données sont poussées dans la cible lorsque la méthode PrintWriter.println(..) ou PrintWriter.format(..) est appelée.
Les méthodes de PrintWriter:
Methods of PrintWriter
public PrintWriter append​(char c)   
public PrintWriter append​(CharSequence csq)  
public PrintWriter append​(CharSequence csq, int start, int end)   
public PrintWriter format​(String format, Object... args)   
public PrintWriter format​(Locale l, String format, Object... args)  
public PrintWriter printf​(String format, Object... args)  
public PrintWriter printf​(Locale l, String format, Object... args)

public boolean checkError()
public void close()   
public void flush()

protected void clearError()  
protected void setError()

public void print​(boolean b)   
public void print​(char c)   
public void print​(char[] s)
public void print​(double d)  
public void print​(float f)  
public void print​(int i)  
public void print​(long l)  
public void print​(Object obj)
public void print​(String s)  

public void println()  
public void println​(boolean x)  
public void println​(char x)  
public void println​(char[] x)  
public void println​(double x)
public void println​(float x)  
public void println​(int x)  
public void println​(long x)  
public void println​(Object x)
public void println​(String x)  

public void write​(char[] buf)
public void write​(char[] buf, int off, int len)
public void write​(int c)  
public void write​(String s)
public void write​(String s, int off, int len)

2- Examples

PrintWriterEx1.java
package org.o7planning.printwriter.ex;

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Locale;

public class PrintWriterEx1 {

    // Windows: C:/SomeFolder/pw-out-test.txt
    private static final String filePath = "/Volumes/Data/test/pw-out-test.txt";

    public static void main(String[] args) throws IOException {
        
        // Create a PrintWriter to write a file.
        PrintWriter printWriter = new PrintWriter(filePath);
        
        LocalDateTime now = LocalDateTime.now();
        
        String empName = "Tran";
        LocalDate hireDate = LocalDate.of(2000, 4, 23);  
        int salary = 10000;
        
        printWriter.printf("# File generated on %1$tA, %1$tB %1$tY %tH:%tM:%tS %n", now, now, now);
 
        printWriter.println(); // New line
        printWriter.printf("Employee Name: %s%n", empName);
        printWriter.printf("Hire date: %1$td.%1$tm.%1$tY %n", hireDate);
        printWriter.printf(Locale.US, "Salary: $%,d %n", salary);

        printWriter.close();
    }
}
Output:
pw-out-test.txt
# File generated on Thursday, February 2021 01:31:22

Employee Name: Tran
Hire date: 23.04.2000
Salary: $10,000
Les méthodes PrintStream.printf(..) et PrintWriter.printf(..) sont les mêmes dans l'utilisation, vous pouvez vous référer à son utilisation dans l'article ci-dessous:

View more Tutorials:

Peut-être que vous êtes intéressé

Voici des leçons en ligne à part du site web o7planning que nous recommandons. La liste comprend des leçons en ligne et celles en promo.