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);
Ensuite, transmettez ce InputStreamReader au constructeur BufferedReader :
BufferedReader br = new BufferedReader(fluxoEntrada);
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
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 != '.');
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"));
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!