La E/S básica en Java se realiza mediante la clase System, a través de sus atributos estáticos err, out e in.
SALIDA
La salida se efectúa a través de System.err o System.out. Estos dos atributos de System son de tipo PrintStream y permiten utilizar, entre otros, los métodos:
o
print(), escribe el argumento. Está sobrecargado para los tipos primitivos.
§
System.out.print(“Hola, mundo”);
§ System.out.print(2050);
o
println(), escribe el argumento y salta de línea.
o
printf(), salida con formato de características análogas a las de C, con mejoras.
§ System.out.printf(“Saludo: %s %d %n”, “Hola, mundo”, 2050);
ENTRADA
La entrada puede efectuarse a
través de System.in, de tipo Inputstream, de varias formas:
o Mediante el método read(). Bastante limitado porque sólo permite leer bytes
(valores numéricos entre 0 y 255) que
devuelve como un entero.
o a partir de un ejemplar de Console
proporcionado por System. Sólo permite leer líneas completas, de tipo String,
que después deben ser interpretadas si
lo que se quiere obtener corresponde a otros tipos, por ejemplo numéricos.
o a través de un ejemplar de Scanner,
que se construye a partir de System.in, en
este caso permite acceder directamente a traductores de todos los tipos básicos, incluyendo líneas completas (String).
Ejemplo con read()
package entradaRead;
import java.io.IOException;
public class EntradaRead {
public
static void main(String[] args) throws IOException {
char carac;
System.out.print("Introduce una
frase: ");
while ((carac=(char) System.in.read()) != '\n')
System.out.print(carac);
}
}
Ejemplo con Console
package
entradasalidaconsole;
import java.io.Console;
import java.io.Console;
public class EntradaSalidaConsole {
public static void
main(String[] args) {
String cadena = "una frase";
Console con = System.console();
if (null != con) {
con.printf("%s%n",
"Escribo desde Console");
cadena= con.readLine("Escriba
%s: ", cadena);
con.printf("La cadena
introducida es:%s%n", cadena);
con.printf("Escribe otra
frase: ");
cadena= con.readLine();
con.printf("La cadena
introducida es:%s%n", cadena);
} else {
System.err.println("Perdón,
no se puede usar la consola.");
}
}
}Ejemplo con Scanner
package entradasalidascanner;
import java.util.Scanner;
public class Entradasalidascanner {
public static void main(String[] args) {
String cadena = "una frase";
Scanner sc = new Scanner(System.in);
System.out.printf("Escriba %s: ", cadena);
cadena= sc.nextLine();
System.out.printf("La cadena introducida es:%s%n", cadena);
System.out.print("Escribe otra frase: ");
cadena= sc.nextLine();
System.out.printf("La cadena introducida es:%s%n", cadena);
}
}
import java.util.Scanner;
public class Entradasalidascanner {
public static void main(String[] args) {
String cadena = "una frase";
Scanner sc = new Scanner(System.in);
System.out.printf("Escriba %s: ", cadena);
cadena= sc.nextLine();
System.out.printf("La cadena introducida es:%s%n", cadena);
System.out.print("Escribe otra frase: ");
cadena= sc.nextLine();
System.out.printf("La cadena introducida es:%s%n", cadena);
}
}
No hay comentarios:
Publicar un comentario