创建文件夹有两种方法,mkdir()和mkdirs(),这两种方法的区别在于:
1.mkdir()只能创建一级目录,且父目录必须存在
2.mkdirs()可以直接创建多级目录
mkdir源码如下:
public boolean mkdir() {
SecurityManager security = System.getSecurityManager();
if (security != null) {
security.checkWrite(path);
}
if (isInvalid()) {
return false;
}
return fs.createDirectory(this);
}
mkdirs源码如下:
public boolean mkdirs() {
if (exists()) {
return false;
}
if (mkdir()) {
return true;
}
File canonFile = null;
try {
canonFile = getCanonicalFile();
} catch (IOException e) {
return false;
}
File parent = canonFile.getParentFile();
return (parent != null && (parent.mkdirs() || parent.exists()) &&
canonFile.mkdir());
}
在mkdirs()方法的源码中,对父目录进行了判断如果不存在,会递归创建