2012-04-23 16 views
7

Duplicar posible:
Recursively create directoryJava mkdir -p equivalente

Cuál es la forma java-esque para crear un director (es), y no se quejan si existe?

Citando el hombre para mkdir:

-p Create intermediate directories as required... with this option 
     specified, no error will be reported if a directory given as an 
     operand already exists. 

Respuesta

12

¿Ha tratado de leer la documentación de java.io.File? El File#mkdirs() hace justo lo que necesita.

+1

El archivo, mkdirs() suprime la mayoría de las excepciones y solo devuelve falso si algo salió mal, por lo que no sabe lo que está sucediendo. Una de las cosas que podría salir mal es que el directorio de hojas ya existe, que es aceptado silenciosamente por mkdir -p. – janek37

+1

Agradecería más la respuesta si no fuera condescendiente. – gonzojive

6

Está buscando File.mkdirs().

Crea el directorio nombrado por esta ruta de acceso abstracta, incluidos los directorios principales necesarios pero inexistentes. Tenga en cuenta que si esta operación falla, puede haber tenido éxito al crear algunos de los directorios principales necesarios.

4

En Java, ambos archivos y directorios se representan como objetos de archivo.

Así que usted puede hacer:

File file = new File("C:/a"); 
file.mkdirs(); 

Espero que ayude.

+0

Al usar mkdir() solo se crea el último directorio en la ruta, debe usar mkdirs() para crear la ruta completa. – GaryF

+0

Gracias @GaryF, eso fue un error tipográfico. Gracias por no votar. – TechSpellBound