Voici plusieurs façons de lire les informations de la console en Java et de les vérifier plus tard!
(1) JDK 1.4 (JDK 1.5 et JDK 1.6 sont également compatibles avec cette méthode)
classe publique TestConsole1 {public static void main (String [] args) {String str = readDataFromConsole ("Veuillez saisir String :); System.out.println (" les informations de la console: + str); } / ** * Utilisez InputStreamReader et System.in pour lire les données de la console * * @param invite * * @return String Input * / private static String ReadDataFromConsole (String Invite) {BuffereDReader br = new BuffereDader (new InputStreamReader (System.in)); String str = null; essayez {System.out.print (invite); str = br.readline (); } catch (ioException e) {e.printStackTrace (); } return str; }}(2) JDK 1.5 (lire avec le scanner)
classe publique TestConsole2 {public static void main (String [] args) {String str = readDataFromConsole ("s'il vous plaît saisir String:"); System.out.println ("Les informations de la console:" + str); } / ** * Utilisez java.util.scanner pour lire les données de la console * * @param invite * * @return String d'entrée * / private static String readDataFromConsole (String invite) {Scanner Scanner = new Scanner (System.in); System.out.print (invite); return Scanner.NextLine (); }}Le scanner peut également scanner facilement des fichiers, lire les informations à l'intérieur et les convertir en type que vous souhaitez, par exemple, en addition des données telles que "2 2.2 3.3 3.33 4.5 FAIT", voir le code suivant:
classe publique TestConsole4 {public static void main (String [] args) lève ioException {filewriter fw = new FileWriter ("num.txt"); fw.write ("2 2,2 3,3 3,33 4.5 fait"); fw.close (); System.out.println ("Sum is" + ScanFileForsum ("num.txt")); } public static double scanfileForsum (String FileName) lève ioException {double sum = 0,0; FileReader FR = null; try {fr = new FileReader (nom de fichier); Scanner Scanner = nouveau scanner (FR); while (scanner.hasnext ()) {if (scanner.hasnextDouble ()) {sum = sum + scanner.nextDouble (); } else {string str = scanner.next (); if (str.equals ("fait")) {break; } else {Throw New RuntimeException ("File Format est faux!"); }}}} catch (filenotfoundException e) {throw new RuntimeException ("file" + filename + "pas trouvé!"); } enfin {if (fr! = null) fr.close (); } RETOUR SUM; }}(3) JDK 1.6 (utilisez java.io.console pour la lecture)
JDK6 fournit une classe Java.io.Console spécifiquement pour accéder aux périphériques de console basés sur des caractères.
Si votre programme souhaite interagir avec CMD sous Windows ou Terminal sous Linux, vous pouvez utiliser la classe Console pour le faire. (Similaire à System.in et System.out)
Mais nous n'obtenons pas toujours la console disponible, si une JVM a la console disponible dépend de la plate-forme sous-jacente et de la façon dont le JVM est appelé.
Si le JVM est démarré sur une ligne de commande interactive (telle que Windows CMD) et que l'entrée et la sortie ne sont pas redirigées vers un autre endroit, vous pouvez obtenir une instance de console disponible.
Lors de l'utilisation de l'IDE, l'instance de console ne peut pas être obtenue. La raison en est que dans l'environnement IDE, les flux d'entrée et de sortie standard sont redirigés, ce qui signifie que l'entrée et la sortie de la console système sont redirigées vers la console IDE
classe publique TestConsole3 {public static void main (String [] args) {String str = readDataFromConsole ("s'il vous plaît saisir String:"); System.out.println ("Les informations de la console:" + str); } / ** * Utilisez java.io.console pour lire les données de la console * * @param invite * * @return String d'entrée * / private static String ReadDataFromConsole (String invite) {console console = System.Console (); if (console == null) {lancer un nouveau illégalStateException ("La console n'est pas disponible!"); } return console.readline (invite); }}Une autre caractéristique de la classe de console est qu'il traite spécifiquement les caractères de sécurité tels que les mots de passe (sans entrée d'écho). Fournissez spécialement la méthode readPassword (), voir le code suivant pour l'application spécifique:
classe publique testConsole5 {public static void main (String [] args) {console console = System.Console (); if (console == null) {lancer un nouveau illégalStateException ("La console n'est pas disponible!"); } while (true) {string username = console.readline ("username:"); char [] mot de passe = console.readpassword ("mot de passe:"); if (username.equals ("chris") && string.valueof (mot de passe) .equals ("gohead")) {console.printf ("Bienvenue à l'application java% 1 $ s. / n", nom d'utilisateur); // Le tableau doit être effacé immédiatement après utilisation pour réduire son temps en mémoire et améliorer le mot de passe de sécurité = null; System.exit (-1); } else {console.printf ("nom d'utilisateur ou mot de passe non valide./n"); }}}}}Ce qui précède est le résumé de plusieurs façons de lire les données de la console par l'éditeur. J'espère que ce sera utile à tout le monde et soutenir Wulin.com plus ~