java-File-mkdir与createNewFile的先后执行

java-fFile-mkdir与createNewFile的先后执行
来源:http://blog.csdn.net/a496418462/article/details/70739760
java中的File类中,mkdir是创建文件夹,createNewFile是创建文件。
但当两个函数先后执行的时候,产生的结果不同。
这里写图片描述

上面是代码运行前的状态。
执行代码如下:


File f = new File("d:\\test\\a");
f.mkdir();
f.createNewFile();

运行完的状态如下:
这里写图片描述
并没有创建名字为“a”的文件,只创建了文件夹。
如果将创建文件夹和文件的代码顺序倒置呢?
首先先把“a”文件夹删除
执行代码如下:

File f = new File("d:\\test\\a");
f.createNewFile();
f.mkdir();

结果如下:

这里写图片描述

创建了文件,而没有创建文件夹。

在上面的基础上继续实验mkdirs()函数,创建文件夹代码如下:
File f = new File(“d:\test\a\b\c”);
f.mkdirs();
这样执行的话,由于有a文件存在,导致无法创建到c文件夹,test文件夹下仍然只有a文件。

紧接着,删除a文件后,再执行上面代码。
这里写图片描述

c文件夹才成功的创建出来

总结:当file对象的路径名称相同的时候,要注意其同名的文件夹或文件是否已经存在,否则可能导致创建文件夹或文件失败(存在文件夹,导致创建文件失败,反之亦然)。用mkdirs创建循环文件的时候,也要注意同名文件的存在。

java mkdir()和mkdirs()区别:http://blog.csdn.net/cnnumen/article/details/8463736

如何创建文件夹 mkdir、mkdirs、createNewFile? http://blog.csdn.net/qq_23263825/article/details/53842731

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值