2011-11-21 12 views
11

Tendré muchos archivos en un directorio. Solo obtendré los nombres de los archivos usando File.getName() y los registraré en un archivo de registro. Supongo que no necesito cerrar el archivo porque no estoy haciendo ninguna operación de lectura/escritura en él.¿Debo cerrar los archivos en los que realizo File.getName()?

Es esto correcto?

+0

que es correcta. – bjarneh

+0

Si desea una lista de los archivos en un directorio, es posible utilizar [ '# lista de archivos()'] (http://download.oracle.com/javase/6/docs/api/java/io/File.html # list% 28% 29) – MByD

+0

Si abre un archivo, debe cerrarlo, pero la clase 'File' no representa un archivo abierto, simplemente representa una ruta. – Wyzard

Respuesta

29

que nunca tenga que cerrar File s, porque es básicamente una representación de un camino. Solo secuencias y lectores/escritores. De hecho, File ni siquiera tiene un método close().

1

Eso es correcto. Tenga en cuenta que no existe el método File.close().

0

Sí, eso es correcto. Cuando abre un archivo creando un FileInputStream o un FileOutputStream, debe cerrar la secuencia al final.

5
Only resources needed to be close. 

En la API de Java no es una interfaz Closeable Interface, esas clases implementan esta interfaz que necesitan estar cerca después de su uso.

close() //method is in that interface.. 

y el uso de cerca es

It closes the stream and releases any system resources associated with it. 
If the stream is already closed then invoking this method has no effect. 

File hay necesidad de estar cerca

Cuestiones relacionadas