BufferedReader en Java: Comment lire du texte à partir d'un flux d'entrée



Cet article couvre le BufferedReader en Java de la classe Reader avec divers constructeurs et méthodes et une description avec des exemples.

Java fournit plusieurs mécanismes pour lire à partir d'un fichier . Une classe importante qui aide à effectuer cette opération est le BufferedReader . Donc, cet article sur BufferedReader dans vous aidera à comprendre la classe Bufferedreader avec des exemples. Voici les sujets abordés dans ce blog:

Qu'est-ce que BufferedReader en Java?

BufferedReader est un Classe Java qui lit le texte du flux d'entrée. Il met en mémoire tampon les caractères pour pouvoir obtenir une lecture efficace des caractères, tableaux , etc. Il hérite de la classe reader et rend le code efficace puisque nous pouvons lire les données ligne par ligne avec le readline () . Il y a quelques conseils que nous devons garder à l'esprit lorsque vous travaillez avec la classe BufferedReader en Java.





  • Il se peut que nous devions spécifier la taille de la mémoire tampon même si la valeur par défaut est suffisamment grande pour n'importe quel usage.
  • A chaque requête d'un lecteur correspondant, une requête de lecture est également faite d'un caractère sous-jacent.
  • Il est toujours conseillé d'encapsuler une classe BufferedReader autour de n'importe quel lecteur tel que InputStreamReaders.
  • Pour les programmes qui utilisent DataInputaStreams pour la saisie textuelle, un BufferedReader approprié remplace DataInputStream pour le localiser.

Déclaration de classe BufferedReader

public class BufferedReader étend Reader

Constructeurs Java BufferedReader

Constructeur La description

BufferedReader (lecteur Reader)

Ce constructeur crée un flux d'entrée de caractères de mise en mémoire tampon qui fonctionne sur un tampon d'entrée de taille par défaut.



BufferedReader (lecteur de lecteur, taille int)

Il utilise la taille spécifiée pour le tampon d'entrée pour la mise en mémoire tampon du flux d'entrée de caractères.

quelle est la difference entre git et github

Méthodes et description

Voici les méthodes avec la description que nous avons pour la classe Java BufferedReader.



Méthode La description

int read ()

Lit un seul caractère

Chaîne readLine ()

Il lit une ligne de texte

réinitialisation du vide ()

Repositionne le flux à la position où la méthode de marquage a été appelée pour la dernière fois

int read (char [] cb, int off, int len)

Lit les caractères dans une partie d'un tableau

marque booléenneSupported ()

Il teste la prise en charge du flux d'entrée pour la méthode de réinitialisation et de marquage

booléen prêt ()

Il vérifie si le flux d'entrée est prêt pour la lecture

saut long (long n)

saute les personnages

void close ()

Il ferme le flux d'entrée

marque vide (int readAheadLimit)

Utilisé pour marquer la position actuelle dans le flux

Exemple:

import java.io. * classe publique Exemple {public static void main (String args [] throws Exception) {FileReader f = new FileReader ('filelocation') BufferedReader b = new BufferedReader (f) int i while ((i = b. read ())! = -1) {System.out.println ((char) i)} b.close () f.close ()

Différence entre scanner et BufferedReader

BufferedReader Scanner

Synchrone et doit être utilisé avec plusieurs threads

Non synchrone et non utilisé avec plusieurs threads

La mémoire tampon est plus grande

La mémoire tampon est plus petite

Plus rapide que le scanner

Plus lent car il analyse les données d'entrée

Il n'y a pas d'ambiguïté liée à la méthode nextline ()

Il y a beaucoup de problèmes avec la méthode nextline ().

Utilise la mise en mémoire tampon pour lire les caractères du flux d'entrée de caractères

C'est un simple scanner de texte qui analyse les types primitifs et les chaînes

BufferedReader dans l'exemple JDK7

import java.io. * classe publique Exemple {public static void main (String [] args) {try (BufferedReader b = new BufferedReader (new fileReader ('filename'))) {String s while ((s = b.readLine ( ))! = null) {System.out.println (s)}} catch (IOException e) {e.printStackTrace ()}}}

Lecture des données depuis la console par InputStreamReader et BufferedReader en Java

import java.io. * classe publique Exemple {public static void main (String args [] throws Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) System.out.println ('Enter Course ') Chaîne de cours = b.readLine () System.out.pritln (' Edureka '+ cours)}}
 Production: Entrez dans le cours Java Edureka Java

Lecture des données depuis la console jusqu'à l'arrêt des écritures par l'utilisateur

import java.io. * classe publique Exemple {public static void main (String args [] throws Exception) {InputStreamReader i = new InputStreamReader (system.in) BufferedReader b = new BufferedReader (i) string course = '' while (! name .equals ('stop')) {System.out.println ('enter course:') course = b.readLine () System.out.println ('Course is:' + course)} b.close () i. proche() } }
 Production: entrer le cours: le cours est: Java entrer le cours: le cours est: arrêter

Cela nous amène à la fin de cet article où nous avons appris comment lire les caractères du flux d'entrée de caractères à l'aide de la classe BufferedReader en Java. J'espère que vous êtes clair avec tout ce qui a été partagé avec vous dans ce tutoriel.

Si vous avez trouvé cet article sur «BufferedReader en Java» pertinent, consultez le une entreprise de formation en ligne de confiance avec un réseau de plus de 250 000 apprenants satisfaits répartis dans le monde entier.

Nous sommes là pour vous aider à chaque étape de votre voyage et proposer un programme conçu pour les étudiants et les professionnels qui souhaitent devenir développeur Java. Le cours est conçu pour vous donner une longueur d'avance dans la programmation Java et vous former aux concepts Java de base et avancés ainsi que divers comme Hiberner & .

Si vous rencontrez des questions, n'hésitez pas à poser toutes vos questions dans la section commentaires de «BufferedReader en Java» et notre équipe se fera un plaisir de vous répondre.