1.错误示范1,输出的是创建文件夹 D:\filepath\test\test.txt。

public class FileTest {public static void main(String[] args) throws IOException {String fileName = "test.txt";File testFile = new File("D:" + File.separator + "filepath" + File.separator + "test" + File.separator + fileName);if (!testFile.exists()) {testFile.mkdirs();// 能创建多级目录}System.out.println("testFile:"+testFile);}
}result--------------------
testFile:D:\filepath\test\test.txt

2.错误示范2,如果 D:\filepath\test\ 文件夹不存在,会报错。

public class FileTest {public static void main(String[] args) throws IOException {String fileName = "test.txt";File testFile = new File("D:" + File.separator + "filepath" + File.separator + "test" + File.separator + fileName);if (!testFile.exists()) {testFile.createNewFile();// 能创建多级目录}System.out.println("testFile:"+testFile);}
}

3.实现在多重目录下创建文件:话不多说上正确代码:

package com.zte.FileTest;import sun.net.ftp.FtpClient;
//import com.zte.ums.cnms.pm.load.enums.MppFileDirEnum;
import java.io.File;
import java.io.IOException;public class FileTest {public static void main(String[] args) throws IOException {String fileName = "test.txt";System.out.println("File.separator:" + File.separator);File testFile = new File("D:" + File.separator + "filepath" + File.separator + "test" + File.separator + fileName);File fileParent = testFile.getParentFile();//返回的是File类型,可以调用exsit()等方法 String fileParentPath = testFile.getParent();//返回的是String类型System.out.println("fileParent:" + fileParent);System.out.println("fileParentPath:" + fileParentPath);if (!fileParent.exists()) {fileParent.mkdirs();// 能创建多级目录}if (!testFile.exists())testFile.createNewFile();//有路径才能创建文件System.out.println(testFile);String path = testFile.getPath();String absolutePath = testFile.getAbsolutePath();//得到文件/文件夹的绝对路径String getFileName = testFile.getName();//得到文件/文件夹的名字System.out.println("path:"+path);System.out.println("absolutePath:"+absolutePath);System.out.println("getFileName:"+getFileName);}
}result---------------------------------
File.separator:\
fileParent:D:\filepath\test
fileParentPath:D:\filepath\test
D:\filepath\test\test.txt
path:D:\filepath\test\test.txt
absolutePath:D:\filepath\test\test.txt
getFileName:test.txt

File类的常见方法(参考一位大牛的,不小心把链接关了)
1.创建。
boolean createNewFile(); //创建文件
boolean mkdir();创建文件夹
boolean mkdirs();创建多级文件夹。

2.删除。
boolean delete();
void deleteOnExit();在程序退出时删除文件。

3.判断。
boolean canExcute(); 判断是否可执行
boolean exists(); 文件事是否存在。
isFile();文件
isDirectory();文件夹
isHidden();//java能得到文件中的隐藏文件但是对隐藏文件时不能访问的
isAbsolute();//绝对路径即时不存在也能得到。
4.获取信息。
getName();
getPath();
getParent();

4.三种文件创建方式:
File file = new File("E:/...");//文件/文件夹路径对象
File file = new File("..." ,""...);//父目录绝对路径 + 子目录名称
File file = new File("...","...");//父目录File对象 + 子目录名称

file.exists():判断文件/文件夹是否存在
file.delete():删除文件/文件夹
file.isDirectory():判读是否为目录
file.isFile():判读是否为文件夹
file.mkdir():创建文件夹(仅限一级目录)
file.mkdirs():创建多及目录文件夹(包括但不限一级目录)

file.createNewFile():创建文件
file.getAbsolutePath():得到文件/文件夹的绝对路径
file.getName():得到文件/文件夹的名字
file.String():同样是得到文件/文件夹的绝对路径等于file.getAbsolutePath()
file.getParent():得到父目录的绝对路径String 不可以调用可以调用mkdir()方法

file.getParentFile():得到父目录的绝对路径的返回值是File型可以调用mkdir()方法

String[] gdir.list():得到目录的子目录\文件的名称(不是绝对路径)
File[] dir.listFiles():得到目录的子目录\文件事是否存在。

Java中File使用--创建文件相关推荐

  1. java new file会创建文件吗_Java高级——文件与I/O流

    简介 本文分为四个部分,首先是介绍File类,概括了一下概念.构造方法及常用方法等,其次是描述了面对对象的三大特征,再次是对抽象类进行了简单的概述,最后从特性.使用等等几个方面对接口进行了一定的描述. ...

  2. java使用File类创建文件或文件夹

    在输入框中输入字符串,判断输入的是文件还是文件夹,如果是文件就出创建问价,是文件夹就出创建文件夹,在创建的时候没有就创建,有就删除(例如:test.test.txt) package Iodemo;i ...

  3. java使用file.createNewFile()创建文件时,报错目录不存在,如何解决

    普通创建文件代码: String strPath = "E:\\test\\test1\\test.txt"; File file = new File(strPath); if( ...

  4. Java中创建目录 或 创建文件

    建立文件夹或文件 只能创建一级目录 //只能在已有的文件夹下创建子文件夹,不能同时创建文件夹和其子文件夹 public void creatFolder(){File file = new File( ...

  5. Java中file.delete()删除文件失败

    删除文件的方法: /*** 删除通过ftp上传到服务器H盘的文件* @param fileName 要删除的文件的文件名* @return 删除成功返回true,否则返回false*/private ...

  6. Java中File文件操作类的详细使用介绍

    文章目录 File类的使用 File的介绍 File常用API 判断文件类型-获取文件信息 创建文件-删除文件功能 遍历文件夹 File类的使用 File的介绍 File的概述: File类在包jav ...

  7. Java File.createNewFile 创建文件的四种方式小笔记

    本文为joshua317原创文章,转载请注明:转载自joshua317博客 Java File.createNewFile 创建文件的四种方式小笔记 - joshua317的博客 1.File(Str ...

  8. Java File createNewFile创建文件包含多层级目录报错

    Java File createNewFile创建文件包含多层级目录报错 比如,需要创建一个包含目录层级结构的文件:c:\dira\dirb\dirc\file.txt 如果直接使用File的crea ...

  9. Java 中几种获取文件路径的方式

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源 | 公众号「码农小胖哥」 1. 前言 Java 开 ...

最新文章

  1. 伪类 伪元素 如何区分
  2. 12月29日云栖精选夜读 | SQL Server数据库漏洞评估了解一下
  3. SLAM——绘制高精度地图的研究笔记
  4. Java开发工程师的发展前景如何?
  5. MySql-Mysql技术内幕~SQL编程学习笔记(1)
  6. 关于Python中的编程,这篇阅读量预算10万+的文章可能是你见过的最完整的讲解
  7. 【错误记录】Google Play 上架报错 ( 对于在 APK 中使用该权限的应用,您必须设置隐私权政策 | 生成并托管 隐私政策 )
  8. react实现上传文件进度条功能_js上传文件(可自定义进度条)
  9. 微信小程序:常用功能6——点击图片,实现图片的预览功能wx.previewImage(Object object, boolean showmenu)
  10. 区块链共识算法及应用研究
  11. linux系统 安装nvm
  12. chatgpt赋能Python-python_patsy
  13. 总谐波失真80_如何将总谐波失真(THD)控制着10%以下?
  14. 最简单DIY基于STM32的远程控制电脑系统②(无线遥杆+按键控制)
  15. 关于0x016f2818这个幻数
  16. 悍将余承东「调防」,华为云能翻盘吗?
  17. 技术贴(1):将移动硬盘名从F盘改为E盘
  18. 收费邮箱的主要特点,收费邮箱价格及容量对比
  19. vue JsBarcode 常用参数设置
  20. Kali渗透测试:使用browser_autopwn2模块进行渗透攻击

热门文章

  1. 马丘比丘的落日(简略秘鲁征服史)
  2. ZYNQ学习之pl和ps接口
  3. Ubuntu Desktop 安装 VMware Workstation for Linux虚拟机
  4. CSDN学霸课表——一切皆为 JavaScript
  5. DNS,二级域名泛解析
  6. yaml语法格式,springboot中yaml的使用
  7. sql查询两个表的关联关系
  8. ExoPlayer详解(官方文档-入门)
  9. knn算法,利用numpy简单实现
  10. 【生日碰撞和数字签名】