java 创建文件夹和文件 汇总

前提

D盘存在文件夹a,文件D:/a/b/c 不存在

1、默认file.exists()、file.isFile()、file.isDirectory() 均返回 false

 2、使用file.createNewFile() 创建文件 D:/a/b/c 出现异常,因为不存在文件夹b

 3、使用file.mkdir() 创建文件夹 D:/a/b/c,无异常,但是创建不成功,因为不存在文件夹b

 4、使用file.mkdirs() 创建 D:/a/b/c 文件夹,成功创建。

5、再次使用file.mkdir() 创建文件夹 D:/a/b/c,无异常,不能创建同名文件夹c

 6、再次使用file.createNewFile() 创建文件 D:/a/b/c,无异常,但是不能创建文件c,因为存在了文件夹c

删除文件夹C

7、使用file.createNewFile() 创建文件c, 成功创建文件c

 

编辑文件c,输入内容为111,

8、再次使用使用file.createNewFile() 创建文件c, 成功创建文件c,无异常,且原文件c仍然存在,即不能创建同名文件,且不会修改同名原文件内容。

结论:

1)如果文件或文件夹在文件系统中不存在,使用file.exists(),file.isFile(),file.isDirectory() 均返回false,所以用是否存在、是否是目录,是否是文件来判断,返回false,然后再对应的创建文件夹和文件的思路是错误的;

1)java 不能使用file.createNewFile()跨文件夹创建文件

2)java不能使用file.mkdir()跨文件夹创建文件夹,可以使用file.mkdirs() ,跨文件夹创建文件夹

3)java 在同一个文件夹下不能创建同名文件夹、且不能创建同名文件,且不能创建同名的文件夹和文件

4)存在相同文件或文件夹时,java 再次创建不报错,但是不会创建新文件或文件夹

 

原文地址:https://www.cnblogs.com/spqin/p/14115610.html