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

Classe Java BufferedWriter

Classe Java BufferedWriter

Dans ce didacticiel, nous allons découvrir Java BufferedWriter et ses méthodes à l'aide d'exemples.

Le BufferedWriter classe du java.io peut être utilisé avec d'autres rédacteurs pour écrire des données (en caractères) plus efficacement.

Il étend la classe abstraite Writer .

Fonctionnement de BufferedWriter

Le BufferedWriter maintient un tampon interne de 8192 caractères .

Pendant l'opération d'écriture, les caractères sont écrits dans la mémoire tampon interne au lieu du disque. Une fois le tampon rempli ou le graveur fermé, tous les caractères du tampon sont écrits sur le disque.

Par conséquent, le nombre de communications vers le disque est réduit. C'est pourquoi l'écriture de caractères est plus rapide avec BufferedWriter .

Créer un BufferedWriter

Pour créer un BufferedWriter , il faut importer le java.io.BufferedWriter paquet d'abord. Une fois que nous avons importé le package, voici comment nous pouvons créer le rédacteur tamponné.

// Creates a FileWriter
FileWriter file = new FileWriter(String name);

// Creates a BufferedWriter
BufferedWriter buffer = new BufferedWriter(file);

Dans l'exemple ci-dessus, nous avons créé un BufferedWriter nommé tampon avec le FileWriter nommé fichier .

Ici, le buffer interne du BufferedWriter a la taille par défaut de 8192 caractères. Cependant, nous pouvons également spécifier la taille du tampon interne.

// Creates a BufferedWriter with specified size internal buffer
BufferedWriter buffer = new BufferedWriter(file, int size);

Le tampon aidera à écrire des caractères dans les fichiers plus efficacement.

Méthodes de BufferedWriter

Le BufferedWriter la classe fournit des implémentations pour différentes méthodes présentes dans Writer .

méthode write()

  • write() - écrit un seul caractère dans le tampon interne du graveur
  • write(char[] array) - écrit les caractères du tableau spécifié dans le rédacteur
  • write(String data) - écrit la chaîne spécifiée dans le rédacteur

Exemple :BufferedWriter pour écrire des données dans un fichier

import java.io.FileWriter;
import java.io.BufferedWriter;

public class Main {

  public static void main(String args[]) {

    String data = "This is the data in the output file";

    try {
      // Creates a FileWriter
      FileWriter file = new FileWriter("output.txt");

      // Creates a BufferedWriter
      BufferedWriter output = new BufferedWriter(file);

      // Writes the string to the file
      output.write(data);

      // Closes the writer
      output.close();
    }

    catch (Exception e) {
      e.getStackTrace();
    }
  }
}

Dans l'exemple ci-dessus, nous avons créé un écrivain tamponné nommé output avec FileWriter . L'écrivain tamponné est lié au output.txt fichier.

FileWriter file = new FileWriter("output.txt");
BufferedWriter output = new BufferedWriter(file);

Pour écrire des données dans le fichier, nous avons utilisé le write() méthode.

Ici, lorsque nous exécutons le programme, le output.txt le fichier est rempli avec le contenu suivant.

This is a line of text inside the file.

Méthode flush()

Pour vider le tampon interne, nous pouvons utiliser le flush() méthode. Cette méthode oblige le rédacteur à écrire toutes les données présentes dans le tampon dans le fichier de destination.

Par exemple, supposons que nous ayons un fichier vide nommé output.txt .

import java.io.FileWriter;
import java.io.BufferedWriter;

public class Main {
  public static void main(String[] args) {

    String data = "This is a demo of the flush method";

    try {
      // Creates a FileWriter
      FileWriter file = new FileWriter(" flush.txt");

      // Creates a BufferedWriter
      BufferedWriter output = new BufferedWriter(file);

      // Writes data to the file
      output.write(data);

      // Flushes data to the destination
      output.flush();
      System.out.println("Data is flushed to the file.");

      output.close();
    }

    catch(Exception e) {
      e.getStackTrace();
    }
  }
}

Sortie

Data is flushed to the file.

Lorsque nous exécutons le programme, le fichier output.txt est rempli avec le texte représenté par la chaîne data .

Méthode close()

Pour fermer le graveur tamponné, nous pouvons utiliser le close() méthode. Une fois le close() est appelée, nous ne pouvons pas utiliser le rédacteur pour écrire les données.

Autres méthodes de BufferedWriter

Méthode Description
newLine() insère une nouvelle ligne au rédacteur
append() insère le caractère spécifié dans le rédacteur courant

Pour en savoir plus, visitez Java BufferedWriter (documentation officielle de Java).


Java

  1. Mot-clé Java final
  2. Opérateur instanceof Java
  3. Classe statique imbriquée Java
  4. Classe anonyme Java
  5. Classe Java Singleton
  6. Réflexion Java
  7. Classe Java ObjectOutputStream
  8. Classe Java BufferedReader
  9. Génériques Java