lectura de datos en java

Páginas: 12 (2974 palabras) Publicado: 17 de abril de 2013
Tema 6. Lectura y escritura
Autor: José C. Riquelme
1. Lectura: la clase Scanner
1.1 Definición
Java proporciona en el paquete java.util una clase que se denomina Scanner que nos permitirá
leer datos desde ficheros de texto o incluso desde teclado. Los objetos de tipo Scanner
mediante la invocación de distintos métodos permitirán leer datos de cualquier tipo (String,
enteros, reales, etc)con diversas posibilidades de separadores. Asimismo permitirá leer un
fichero de texto línea a línea, guardando cada línea en un objeto de tipo String.
Para construir un objeto de tipo Scanner se invocará al constructor de la clase pasándole como
argumento un objeto de tipo File (que se encuentra en el paquete java.io). Los objetos de tipo
File relacionan un fichero con su nombre y path en elsistema de archivos del ordenador. Un
objeto de tipo File se crea mediante un constructor al que se le pasa como argumento una
cadena de caracteres con el nombre y el path del fichero que se quiere leer o escribir. Por
ejemplo:
File f = new File("palabras.txt");
Indica que el fichero palabras.txt se encuentra en el directorio raíz de la carpeta que contenga
nuestro proyecto Java. Siquisiéramos que el fichero estuviera en una carpeta concreta
podríamos poner un constructor como:
File f = new File("c:\Usuarios\pedro\clases\poo\tema6\palabras.txt");
Y en la carpeta del paquete test del proyecto podríamos poner:
File f = new File(".\src\test\palabras.txt");
Una vez creado el fichero f se puede invocar al constructor de la clase Scanner:
Scanner sc = new Scanner(f);
Sin embargo lousual es hacerlo todo en la misma sentencia ya que el objeto de tipo File
normalmente no se va a usar:
Scanner sc = new Scanner(new File("palabras.txt"));
1.2 Métodos de la clase Scanner
La clase Scanner proporciona un conjunto de métodos para leer el contenido del fichero de
texto que se ha conectado mediante la invocación del constructor. En la siguiente tabla se
exponen algunos de los másinteresantes, como siempre se puede ver la relación completa en
la documentación de Java: http://docs.oracle.com/javase/7/docs/api/java/util/Scanner.html

2

Introducción a la Programación

void

close()
Closes this scanner.

boolean

hasNext()
Returns true if this scanner has another token in its input.

boolean

hasNextDouble()
Returns true if the next token in thisscanner's input can be interpreted as a double
value using the nextDouble() method.

boolean

hasNextInt()
Returns true if the next token in this scanner's input can be interpreted as an int value
in the default radix using the nextInt() method.

boolean

hasNextLine()
Returns true if there is another line in the input of this scanner.

boolean

hasNextLong()
Returns true if the nexttoken in this scanner's input can be interpreted as a long
value in the default radix using the nextLong() method.

String

next()
Finds and returns the next complete token from this scanner.

double

nextDouble()
Scans the next token of the input as a double.

int

nextInt()
Scans the next token of the input as an int.

String

nextLine()
Advances this scanner past the currentline and returns the input that was skipped.

long

nextLong()
Scans the next token of the input as a long.

Scanner

useDelimiter(String pattern)
Sets this scanner's delimiting pattern to a pattern constructed from the specified
String.

Antes de explicar el uso de estos métodos hay que reseñar un par de cuestiones:
 Java permite crear objetos de tipo Scanner invocando distintosconstructores, no solo
con argumentos de tipo File, sino también InputStream, Readable o incluso un String.
Estos constructores se mantienen por compatibilidad entre versiones de Java y para
permitir lecturas a nivel de byte.
 El método useDelimiter sobre un objeto Scanner lleva como argumento un objeto de
tipo Pattern: http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Lectura de datos
  • Ensayo Agregacion De Datos Java
  • Java Data Mining
  • Datos Primitivos en Java
  • Entrada Y Salida De Datos En Java
  • Tipos De Datos Que Existen En Java
  • Tipos de datos en Java
  • entrada y salida de datos en java

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS