分析getParentFile和createNewFile

本文详细介绍如何使用Java的File类创建文件前先确保其父目录存在,避免直接调用mkdirs()或createNewFile()导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

file.getParentFile()是获取文件对象的父级文件夹目录对象,获取到了之后可以把父级文件夹创建出来,然后硬盘上真的存在了文件夹目录后才能createNewFile()创建文件

demo:

	File file = new File("D:\\myproject\\new\\test.txt");
	
    File parentFile = file.getParentFile();
    
    System.out.println(parentFile.mkdirs());
    
    System.out.println(file.createNewFile());

此时在你电脑上创建这个文件出来,
如果直接mkdirs()会导致text.txt也当成文件夹生成了,硬盘中就会存在D:\myproject\new\test.txt\ 这么一个文件夹目录。mkdirs只会生成文件夹

如果直接createNewFile()(顾名思义创建新文件),会找不到文件对象的父级文件夹目录而创建失败

所以第一步:
获取文件的父级文件夹目录,然后在在硬盘上创建出来

第二步:
文件夹目录有了就可以createNewFile()创建出你要的文件啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值