En este post tenemos una forma sencilla de leer un fichero de texto en Java. Para ello usamos la clase Scanner que nos ayuda a encontrar las variables y sus valores.
/*Esta clase lee el fichero de configuración*/
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;public class ReadFile {
public static java.util.Hashtable read() throws IOException {
//Creamos un FileReader con la ruta del fichero a leer
FileReader file = new FileReader(”/ruta/configuration.conf”);//Creamos el Objeto Scanner a partir del FileReader creado
Scanner scanner = new Scanner(file);
java.util.Hashtable hashFile = new java.util.Hashtable();
//Creamos las variables donde guardamos el nombre
//y el valor de cada variable
String name = “”, value=”";//Este bucle recorre todo elfichero
while (scanner.hasNextLine()) {
//Obtenemos la siguiente linea del fichero
Scanner line = new Scanner(scanner.nextLine());//Especificamos el separador entre variable y
//valor en este caso: un espacio en blanco
line.useDelimiter(” “);//Si la linea encontrada no esta en blanco obtenemos nombre
//de la variable
if(line.hasNext())
name = line.next();//Si la linea no empieza por el carácter ‘#’ y por lo tanto
//no es un comentario y ademas tiene un valor, lo obtenemos
if(!name.startsWith(”#”) & line.hasNext()){
value = line.next();//Añadimos en la tabla de hash el nombre como clave
//y el valor como valor.
hashFile.put(name.trim(), value.trim());
}//Cerramos la linea
line.close();
}//Cerramos scanner y fichero
scanner.close();
file.close();//Devolvemos la tabla de hash
return hashFile;
}
}