📜  java 创建文件和父目录 - Java (1)

📅  最后修改于: 2023-12-03 15:01:33.314000             🧑  作者: Mango

Java 创建文件和父目录

在Java中,我们可以使用File类来创建文件和目录。但是,在创建文件时,我们还需要确保其父目录存在。下面介绍如何在Java中创建文件和父目录。

创建目录

如果需要创建目录,可以使用 mkdir() 或者 mkdirs() 方法。其中,mkdir() 方法创建单层目录,如果父目录不存在,则会创建失败;而 mkdirs() 方法创建多层目录,如果父目录不存在,则会一起创建。

示例代码如下:

import java.io.File;

public class CreateDirectoryExample {
    public static void main(String[] args) {
        File dir = new File("C:/example/newdir");
        boolean flag = dir.mkdir();
        if(flag){
            System.out.println("Directory created successfully");
        }else{
            System.out.println("Failed to create directory");
        }
    }
}

以上代码使用 mkdir() 方法创建了一个单层目录。如果需要创建多层目录,可以使用 mkdirs() 方法,如下所示:

File dir = new File("C:/example/newdir/subdir/subsubdir");
boolean flag = dir.mkdirs();
创建文件

如果需要创建文件,需要使用 createNewFile() 方法。但是,在创建文件之前,我们需要确保其父目录已经存在。如果父目录不存在,则会创建失败。

示例代码如下:

import java.io.File;
import java.io.IOException;

public class CreateFileExample {
    public static void main(String[] args) {
        File file = new File("C:/example/newdir/newfile.txt");
        try {
            boolean flag = file.createNewFile();
            if(flag){
                System.out.println("File created successfully");
            }else{
                System.out.println("Failed to create file");
            }
        }
        catch (IOException e) {
            System.out.println(e.getMessage());
        }
    }
}

以上代码创建了一个名为 newfile.txt 的文件。如果需要创建其他类型的文件,可以直接使用 createNewFile() 方法,并指定文件扩展名。

创建文件和父目录

如果需要创建文件和父目录,可以结合使用 mkdirs()createNewFile() 方法。示例代码如下:

import java.io.File;
import java.io.IOException;

public class CreateFileWithDirectoryExample {
    public static void main(String[] args) {
        File file = new File("C:/example/newdir/subdir/subsubdir/newfile.txt");
        try {
            boolean flag = file.getParentFile().mkdirs();
            if(flag){
                flag = file.createNewFile();
                if(flag){
                    System.out.println("File created successfully");
                }else{
                    System.out.println("Failed to create file");
                }
            }else{
                System.out.println("Failed to create directory");
            }
        }
        catch (IOException e) {
            System.out.println(e.getMessage());
        }
    }
}

以上代码会创建文件 newfile.txt 以及其父目录 newdir/subdir/subsubdir

综上所述,通过File类的 mkdir()mkdirs()createNewFile() 方法,我们可以很方便地创建文件和目录,并确保父目录的存在。