Aquí hay varias formas de leer información de la consola en Java, ¡y verifíquela más tarde!
(1) JDK 1.4 (JDK 1.5 y JDK 1.6 también son compatibles con este método)
public class testConSole1 {public static void main (String [] args) {String str = readDataFromConsole ("por favor ingrese la cadena :); system.out.println (" la información de la consola: + str); } / ** * Use InputStreamReader y System.in para leer los datos de la consola * * @param indic * * @return String * / private static string readDataFromConsole (cadena indicada) {bufferedReader br = new BufferedReader (nuevo InputStreamReader (System.in)); Cadena str = nulo; intente {System.out.print (indicador); str = br.readline (); } catch (ioException e) {E.PrintStackTrace (); } return str; }}(2) JDK 1.5 (lea con el escáner)
public class testConSole2 {public static void main (string [] args) {String str = readDataFromConsole ("por favor ingrese la cadena:"); System.out.println ("La información de la consola:" + str); } / ** * Use java.util.scanner para leer datos de la consola * * @param indic * * @return String * / private static string readDataDataFromConsole (string ind) {Scanner Scanner = New Scanner (System.in); System.out.print (indicador); return scanner.nextline (); }}El escáner también puede escanear fácilmente los archivos, leer la información dentro y convertirla al tipo que desee, por ejemplo, sumar datos como "2 2.2 3.3 3.33 4.5 Listo", consulte el siguiente código:
public class testConsole4 {public static void main (string [] args) lanza ioexception {filewriter fw = new FileWriter ("num.txt"); fw.write ("2 2.2 3.3 3.33 4.5 Hecho"); fw.close (); System.out.println ("suma es"+ScanFileForSum ("num.txt")); } public static shatfileForSum (String FileName) lanza IOException {doble suma = 0.0; FileReader FR = NULL; intente {fr = new FileReader (nombre de archivo); Escáner escáner = nuevo escáner (FR); while (scanner.hasnext ()) {if (scanner.hasnextDouble ()) {sum = sum + scanner.nextDouble (); } else {string str = scanner.next (); if (str.equals ("hecho")) {break; } else {lanzar nueva runtimeException ("¡El formato de archivo está mal!"); }}}} Catch (FileNotFoundException e) {Throw New RuntimeException ("File" + FileName + "No encontrado!"); } finalmente {if (fr! = null) fr.close (); } suma de retorno; }}(3) JDK 1.6 (use java.io.console para leer)
JDK6 proporciona una clase java.io.console específicamente para acceder a dispositivos de consola basados en personajes.
Si su programa quiere interactuar con CMD en Windows o Terminal en Linux, puede usar la clase de consola para hacerlo. (Similar a System.in y System.out)
Pero no siempre obtenemos la consola disponible, si un JVM tiene la consola disponible depende de la plataforma subyacente y cómo se llama al JVM.
Si el JVM se inicia en una línea de comando interactiva (como Windows CMD) y la entrada y salida no se redirigen a otro lugar, entonces puede obtener una instancia de consola disponible.
Cuando se usa el IDE, la instancia de la consola no se puede obtener. La razón es que en el entorno IDE, las secuencias de entrada y salida estándar se redirigen, lo que significa que la entrada y la salida en la consola del sistema se redirigen a la consola IDE
public class testConsole3 {public static void main (string [] args) {String str = readDataFromConsole ("por favor ingrese la cadena:"); System.out.println ("La información de la consola:" + str); } / ** * use java.io.console para leer datos de la consola * * @param indic * * @return entrada cadena * / string static private readDataFromConsole (string ind) {console console = system.console (); if (console == null) {tirar nueva ilegalstateException ("¡La consola no está disponible!"); } return console.readline (indicador); }}Otra característica de la clase de consola es que procesa específicamente caracteres de seguridad como contraseñas (sin entrada de eco). Proporcione especialmente el método ReadPassword (), consulte el siguiente código para la aplicación específica:
public class testConsole5 {public static void main (string [] args) {console console = system.console (); if (console == null) {tirar nueva ilegalstateException ("¡La consola no está disponible!"); } while (true) {string username = console.readline ("username:"); char [] contraseña = console.readpassword ("contraseña:"); if (username.equals ("chris") && string.valueOf (contraseña) .equals ("gohead")) {console.printf ("bienvenido a la aplicación java %1 $ s./n", username); // La matriz debe eliminarse inmediatamente después de usarse para reducir su tiempo en la memoria y mejorar la contraseña de seguridad = NULL; System.exit (-1); } else {console.printf ("nombre de usuario o contraseña inválido./n"); }}}}}Lo anterior es el resumen de varias formas de leer datos de la consola por parte del editor. Espero que sea útil para todos y apoye a Wulin.com más ~