2012-02-21 12 views
17

estoy tratando de texto de salida a un archivo de recursos en Java, así:¿Cómo ver si el archivo de recursos existe en Java?

File file = new File(MLM.class.getClassLoader().getResource("mazes.txt").toString()); 
BufferedWriter out = new BufferedWriter(new FileWriter(file)); 
.. 

pero debido a que el archivo de recursos no se ha creado me sale una excepción de puntero nulo. ¿Cómo puedo crear un archivo de recursos en blanco primero si ya no existe para evitar este error?

+0

Compruebe esta publicación: http://stackoverflow.com/questions/1816673/how-do-i-check-if-a-file-exists-java-on- windows – adis

Respuesta

32

Un cheque nulo sencilla sería suficiente

URL u = MLM.class.getResource("/mazes.txt"); 
if (u != null) { 
     ... 
} 

Desde el Javadoc para getResource

Devuelve:
un objeto URL o null si no se encuentra ningún recurso con este nombre

+3

No funcionó para mí , pero MLM.class.getResource ("mazes.txt") funcionó. – Anthony

+0

Necesito una ruta absoluta, como esta 'MLM.class.getResource ("/mazes.txt ")' – user6537157

1

Puede usar antes de su código:

File.createNewFile()

Atómicamente crea un nuevo archivo, vacía denominada por esta vía de acceso abstracta si y sólo si todavía no existe un archivo con este nombre. La comprobación de existe la existencia del archivo y la creación del archivo si no existe existe una sola operación que es atómica con respecto a todas las demás actividades del sistema de archivos que puedan afectar el archivo.

Cuestiones relacionadas