una subcarpetas sirve que para metodo listar guardar directorio crear codigo clase carpeta archivos java directory

subcarpetas - ¿Cómo crear un directorio en Java?



listar archivos de una carpeta y subcarpetas java (18)

¿Cómo creo el directorio / carpeta?

Una vez que he probado System.getProperty("user.home");

Tengo que crear un directorio (nombre de directorio "nueva carpeta") si y solo si no existe una nueva carpeta.


mkdir vs mkdirs

Si quieres crear un solo directorio usa mkdir

new File("/path/directory").mkdir();

Si desea crear una jerarquía de estructura de carpetas use mkdirs

new File("/path/directory").mkdirs();


  1. Crear un directorio único.

    new File("C://Directory1").mkdir();

  2. Cree un directorio llamado "Directorio2 y todos sus subdirectorios" Sub2 "y" Sub-Sub2 "juntos.

    new File("C://Directory2//Sub2//Sub-Sub2").mkdirs()

Fuente: este tutorial perfecto, encuentras también un ejemplo de uso.


Aunque esta pregunta ha sido contestada. Me gustaría poner algo extra, es decir, si existe un archivo con el nombre del directorio que está intentando crear, de lo contrario debería aparecer un error. Para futuros visitantes.

public static void makeDir() { File directory = new File(" dirname "); if (directory.exists() && directory.isFile()) { System.out.println("The dir with name could not be" + " created as it is a normal file"); } else { try { if (!directory.exists()) { directory.mkdir(); } String username = System.getProperty("user.name"); String filename = " path/" + username + ".txt"; //extension if you need one } catch (IOException e) { System.out.println("prompt for error"); } } }


Bueno para crear Directorio / carpeta en java tenemos dos métodos

Aquí el método makedirectory crea un directorio único si no existe.

File dir = new File("path name"); boolean isCreated = dir.mkdir();

Y

File dir = new File("path name"); boolean isCreated = dir.mkdirs();

Aquí el método makedirectories creará todos los directorios que faltan en la ruta que representa el objeto de archivo.

Por ejemplo, consulte el enlace de abajo (se explica muy bien). ¡¡Espero eso ayude!! https://www.flowerbrackets.com/create-directory-java-program/



Después de ~ 7 años, lo actualizaré para mejorar el enfoque, lo cual es sugerido por Bozho.

new File("/path/directory").mkdirs();

Obsoleto:

File theDir = new File("new folder"); // if the directory does not exist, create it if (!theDir.exists()) { System.out.println("creating directory: " + theDir.getName()); boolean result = false; try{ theDir.mkdir(); result = true; } catch(SecurityException se){ //handle it } if(result) { System.out.println("DIR created"); } }


El siguiente método debería hacer lo que desea, solo asegúrese de verificar el valor de retorno de mkdir() / mkdirs()

private void createUserDir(final String dirName) throws IOException { final File homeDir = new File(System.getProperty("user.home")); final File dir = new File(homeDir, dirName); if (!dir.exists() && !dir.mkdirs()) { throw new IOException("Unable to create " + dir.getAbsolutePath(); } }


Esta es la forma de trabajar para mí, hacer un solo directorio o más o ellos: es necesario importar java.io.File;
/ * ingrese el código a continuación para agregar un directorio dir1 o verifique si existe dir1, si no existe, créelo y haga lo mismo con dir2 y dir3 * /

File filed = new File("C://dir1"); if(!filed.exists()){ if(filed.mkdir()){ System.out.println("directory is created"); }} else{ System.out.println("directory exist"); } File filel = new File("C://dir1//dir2"); if(!filel.exists()){ if(filel.mkdir()){ System.out.println("directory is created"); }} else{ System.out.println("directory exist"); } File filet = new File("C://dir1//dir2//dir3"); if(!filet.exists()){ if(filet.mkdir()){ System.out.println("directory is created"); }} else{ System.out.println("directory exist"); }


Esta función le permite crear un directorio en el directorio de inicio del usuario.

private static void createDirectory(final String directoryName) { final File homeDirectory = new File(System.getProperty("user.home")); final File newDirectory = new File(homeDirectory, directoryName); if(!newDirectory.exists()) { boolean result = newDirectory.mkdir(); if(result) { System.out.println("The directory is created !"); } } else { System.out.println("The directory already exist"); } }


Intenta con esto.

import java.io.File; public class MakingDirectory { public static void main(String[] args) { String s="d://msreddy//sample1"; File file=new File(s); file.mkdirs(); } }

para más información see esto.


Limpio y ordenado:

import java.io.File; public class RevCreateDirectory { public void revCreateDirectory() { //To create single directory/folder File file = new File("D://Directory1"); if (!file.exists()) { if (file.mkdir()) { System.out.println("Directory is created!"); } else { System.out.println("Failed to create directory!"); } } //To create multiple directories/folders File files = new File("D://Directory2//Sub2//Sub-Sub2"); if (!files.exists()) { if (files.mkdirs()) { System.out.println("Multiple directories are created!"); } else { System.out.println("Failed to create multiple directories!"); } } } }


Para Java 7 y superior:

Path path = Paths.get("/your/path/string"); if(!Files.exists(path)) { try { Files.createDirectories(path); } catch (IOException e) { e.printStackTrace(); } }



Si quieres estar seguro de que está creado, entonces esto:

final String path = "target/logs/"; final File logsDir = new File(path); final boolean logsDirCreated = logsDir.mkdir(); if (!logsDirCreated) { final boolean logsDirExists = logsDir.exists(); assertThat(logsDirExists).isTrue(); }

mkDir() devuelve un booleano, y Findbugs llorará por ello si no usas la variable. Además no es agradable ...

mkDir() solo devuelve true si mkDir() crea. Si el directorio existe, devuelve falso, así que para verificar el directorio que creó, solo exists() call exists() si mkDir() devuelve falso.

assertThat() verifica el resultado y falla si exists() devuelve falso. ofc puede usar otras cosas para manejar el directorio no creado.


Solo quería señalar a todos los que llaman File.mkdir() o File.mkdirs() para tener cuidado de que el objeto File sea ​​un directorio y no un archivo. Por ejemplo, si llama a mkdirs() para la ruta /dir1/dir2/file.txt , se creará una carpeta con el nombre file.txt que probablemente no sea lo que quería. Si está creando un nuevo archivo y también desea crear automáticamente carpetas principales, puede hacer algo como esto:

File file = new File(filePath); if (file.getParentFile() != null) { file.getParentFile().mkdirs(); }


También puede makdir() función makdir() para crear un nuevo directorio en la carpeta donde lo desee.


new File("/path/directory").mkdirs();

Aquí "directorio" es el nombre del directorio que desea crear / existir.


public class Test1 { public static void main(String[] args) { String path = System.getProperty("user.home"); File dir=new File(path+"/new folder"); if(dir.exists()){ System.out.println("A folder with name ''new folder'' is already exist in the path "+path); }else{ dir.mkdir(); } } }