Cómo leer un búffer y poner su contenido en un String

Como ejemplo, pondremos un método que recibe el típico objeto

BufferedReader

y nos devuelve otro objeto del tipo

String

El contenido del método seria:

public static String leeBuffer(BufferedReader buffer) throws Exception
{
    String retorno = null;

    String lineaSalida = “”;
    StringBuffer contenido = new StringBuffer();
    String separador = “”;

    while ((lineaSalida = buffer.readLine()) != null)
    {
        contenido.append(separador + lineaSalida);
        separador = “\n”;
    }

    retorno = contenido.toString();

    return retorno;
}

El método anterior podríamos usarlo, por ejemplo, cuando leemos un resource que podría ser un fichero contenido dentro de un fichero jar

public static String leeFichero(Class clase, String localizacion) throws Exception
{
    InputStream entrada = clase.getResourceAsStream(localizacion);
    BufferedReader buffer = new BufferedReader(new InputStreamReader(entrada));

    return leeBuffer(buffer);
}

o también un fichero localizado en nuestro file system

public static final String leeFichero(String ruta) throws Exception
{
    File rutaFichero = new File(ruta);
    FileReader lectorFichero = new FileReader(rutaFichero);
    BufferedReader buffer = new BufferedReader(lectorFichero);

    return leeBuffer(buffer);
}

No hay comentarios

Agregar comentario