Java 在给定路径上创建文件,所在文件夹不存在时,如何正确创建。
- String strPath = "E:\\a\\aa\\aaa.txt";
- File file = new File(strPath);
- if(!file.exists())){
- file.createNewFile();
- }
这段代码,如果 E:\a\aa\ 文件夹不存在,会报错。
- String strPath = "E:\\a\\aa\\aaa.txt";
- File file = new File(strPath);
- if(!file.exists())){
- file.file.mkdirs();
- }
这段代码,会创建文件夹 E:\\a\\aa\\aaa.txt\。 这个地方的aaa.txt经过这个程序后,也成为一个文件夹了.
- String strPath = "E:\\a\\aa\\aaa.txt";
- File file = new File(strPath);
- File fileParent = file.getParentFile();
- if(!fileParent.exists()){
- fileParent.mkdirs();
- }
- file.createNewFile();
这段代码可以成功创建文件。 file.getParentFile()解释:抽象路径名的父项由路径名的前缀(如果有)和路径名的名称序列中的每个名称组成,除了最后一个。 如果名称序列为空,则路径名不会指定父目录。
也就是上面的打印结果为:E:\\a\\aa