Maison > Java > javaDidacticiel > Saisie de la console à l'aide de flux de caractères

Saisie de la console à l'aide de flux de caractères

Linda Hamilton
Libérer: 2024-11-11 18:50:03
original
626 Les gens l'ont consulté

Entrada do console com o uso de fluxos de caracteres

Pour lire les données de la console en Java de manière efficace et conviviale (idéal pour l'internationalisation), il est recommandé d'utiliser des flux de caractères au lieu de flux d'octets. Puisque System.in est un flux d’octets, il doit être encapsulé dans un Reader. La classe recommandée pour cette tâche est BufferedReader, qui utilise InputStreamReader pour convertir les octets en caractères.

Le processus fonctionne comme suit :

Créez un InputStreamReader associé à System.in :

InputStreamReader fluxoEntrada = new InputStreamReader(System.in);

Copier après la connexion

Ensuite, transmettez ce InputStreamReader au constructeur BufferedReader :

BufferedReader br = new BufferedReader(fluxoEntrada);

Copier après la connexion

De cette façon, br est un flux d'entrée basé sur des caractères connecté à la console.

Méthodes de lecture des caractères et des chaînes

  • read() : lit un seul caractère Unicode et renvoie -1 à la fin du flux.
  • readLine() : lit une ligne complète sous forme de chaîne jusqu'à ce que l'utilisateur appuie sur ENTRÉE, renvoyant null à la fin du flux.

Exemple d'utilisation :
Le code suivant lit les caractères de la console jusqu'au caractère . être tapé :

char c;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter characters, period to quit.");
do {
  c = (char) br.read();
  System.out.println(c);
} while(c != '.');

Copier après la connexion

Un autre exemple permet de lire des lignes de texte jusqu'à ce que le mot « stop » soit inséré :

String str;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter lines of text.");
System.out.println("Enter 'stop' to quit.");
do {
  str = br.readLine();
  System.out.println(str);
} while(!str.equals("stop"));

Copier après la connexion

Ces approches rendent la saisie de données au clavier plus pratique et structurée, en particulier pour les programmes qui nécessitent la prise en charge de différents encodages de caractères.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal