Hola, a ver si alguien puede resolverme la duda.
Tengo la siguiente porción de código para leer archivos de texto:
----------------------------------------------------------------------
try {
File f = new File("ruta");
FileInputStream fis = new FileInputStream(f);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
/* Codigo tratando el fichero */
} catch (Exception ex) {
/*Tratando cualquier excepcion */
} finally {
/* Cerrando Streams (DUDA)
}
-----------------------------------------------------------------------
La pregunta es bastante simple creo... pero no se la respuesta
Si cierro el objeto "br" con br.close(), se cierra tambien "isr" y "fis"?
Es decir, basta con cerrar el buffer para cerrar los streams? o hay que cerrarlos uno a uno.
Esto me plantea la siguientes cuestiones:
-SI hay que cerrarlos uno a uno, que pasaría si en lugar de inicializar los streams por separado hiciera algo del estilo:
BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(f));
Quedaría el fichero abierto?
Gracias de antemano