Para
introducirnos en el amplio mundo de la programación hablaremos de la importancia del manejo de los datos entrada y salida de los mismos, ya que esto es solo una muestra de lo que veremos el resto de nuestras próximas publicaciones, el uso adecuado de los datos.
Es decir, con la finalidad de comprender las funciones, mostrare código fuente para que puedan analizar y usar en sus proyectos.
Por supuesto que se dará una breve explicación del funcionamiento y su implementacion.
Es decir, con la finalidad de comprender las funciones, mostrare código fuente para que puedan analizar y usar en sus proyectos.
Por supuesto que se dará una breve explicación del funcionamiento y su implementacion.
Entrada y salida de datos en java ( Teclado y pantalla)
Lo que debemos saber de entrada de datos.
En la mayoría de casos la fuente de entrada de datos es el teclado
y la fuente de salida de datos es la pantalla.
La entrada y salida estándar son flujos de datos que actúan como
canales de comunicación permitiendo la interacción entre un programa y
su entorno en el sistema. En Java podemos tener acceso a estos flujos
de datos desde la clase
java.lang.System.
La clase System define un objeto de la clase BufferedIputStream, cuya
referencia viene dada por in. El objeto esta asociado al
flujo estándar de entrada, que por defecto es el teclado. Los
elementos básicos de este flujo son caracteres
individuales , no cadenas como ocurre con el objeto out. Entre los métodos de las clase se encuentra read(), que devuelve el carácter actual
en el buffer de entrada (solamente 1 carácter).
Los Buffer son Espacios de memoria principal que se reservan para el
almacenamiento intermedio de datos procedentes o con destino a los
periféricos. Los dos esquemas más usuales de reserva de zonas que
incorporan los Sistemas Operativos para mejorar su rendimiento son el
buffer simple y el buffer doble.
Lo que debemos saber de salida de datos.
El objeto out definido en la clase System esta asociado con el flujo de salida, que dirige los datos a consola y permite visualizar en la pantalla de su equipo.
System.out es una referencia a un objeto de la clase PrintStream, el cual contiene los métodos esenciales para mostrar la salida de datos por pantalla a través de un buffer. Entre ellos tenemos:
print(); Transfiere una cadena de caracteres al buffer de la pantalla.
println(); Transfiere una cadena de caracteres y el caracter de fin de linea al buffer de la pantalla.
flus(); El buffer con las cadenas almacenadas se vuelcan en pantalla.
Ejemplo 1:
El código siguiente es un ejemplo simple de entrada de datos desde la consola.
Pero hacemos énfasis en el concepto anterior, donde explica que con el metodo read(), solamente obtendremos un solo carácter.
El código siguiente es un ejemplo simple de entrada de datos desde la consola.
Pero hacemos énfasis en el concepto anterior, donde explica que con el metodo read(), solamente obtendremos un solo carácter.
import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger;
public class EDDSimples { private static char flujo;//variable temporal que recibe el dato public static void main(String[] args) { System.out.println("Ingresar un dato"); try { flujo=(char) System.in.read();// se castea para pertenecer al mismo tipo de variable } catch (IOException ex) { Logger.getLogger(EDDSimples.class.getName()).log(Level.SEVERE, null, ex); } System.out.println("El dato ingresado: "+flujo); } }
Resultado del primer ejemplo |
Ejemplo 2:
El código siguiente es un ejemplo simple de entrada de datos desde la consola.
Ahora no recaudaremos un solo carácter sino que obtendremos todos los datos encontrados en una linea. Usando InputStreamReader se obtiene el flujos de bytes y es trasladado a flujos de caracteres.
BufferedReader Crea un flujo de caracteres de entrada de búfer que utiliza una memoria intermedia de entrada de tamaño predeterminado.
La variable linea solo obtiene la conversión de bytes a cadenas de caracteres.
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.logging.Level; import java.util.logging.Logger;
public class EDDSimples { public static void main(String[] args) { String linea = null; InputStreamReader Flujo_bytes= new InputStreamReader (System.in); BufferedReader entrada= new BufferedReader (Flujo_bytes); System.out.println("Ingresar un flujo de datos"); System.out.flush(); try { linea= entrada.readLine(); } catch (IOException ex) { Logger.getLogger(EDDSimples.class.getName()).log(Level.SEVERE, null, ex); } System.out.println("Dato ingresado: "+linea); } }
Salida del ejemplo 2 |
No hay comentarios :
Publicar un comentario