当前位置: 首页 > news >正文

File类的常用API

判断文件类型

public boolean isDirectory()

public boolean isFile()

获取文件信息

public boolean exists()

public String getAbsolutePath()

public String getPath() 返回创建文件对象时传入的抽象路径的字符串形式

public String getName()

public long lastModified()

案例

/**目标:File类的获取功能的API- public String getAbsolutePath()  :返回此File的绝对路径名字符串。- public String getPath()  : 获取创建文件对象的时候用的路径- public String getName()  : 返回由此File表示的文件或目录的名称。- public long length()  :    返回由此File表示的文件的长度。*/
public class FileDemo02 {public static void main(String[] args) {// 1.绝对路径创建一个文件对象File f1 = new File("D:/resources/xueshan.jpeg");// a.获取它的绝对路径。System.out.println(f1.getAbsolutePath());// b.获取文件定义的时候使用的路径。System.out.println(f1.getPath());// c.获取文件的名称:带后缀。System.out.println(f1.getName());// d.获取文件的大小:字节个数。System.out.println(f1.length()); // 字节大小// e.获取文件的最后修改时间long time = f1.lastModified();System.out.println("最后修改时间:" + new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(time));// f、判断文件是文件还是文件夹System.out.println(f1.isFile()); // trueSystem.out.println(f1.isDirectory()); // falseSystem.out.println("-------------------------");File f2 = new File("file-io-app\\src\\data.txt");// a.获取它的绝对路径。System.out.println(f2.getAbsolutePath());// b.获取文件定义的时候使用的路径。System.out.println(f2.getPath());// c.获取文件的名称:带后缀。System.out.println(f2.getName());// d.获取文件的大小:字节个数。System.out.println(f2.length()); // 字节大小// e.获取文件的最后修改时间long time1 = f2.lastModified();System.out.println("最后修改时间:" + new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(time1));// f、判断文件是文件还是文件夹System.out.println(f2.isFile()); // trueSystem.out.println(f2.isDirectory()); // falseSystem.out.println(f2.exists()); // trueFile file = new File("D:/");System.out.println(file.isFile()); // falseSystem.out.println(file.isDirectory()); // trueSystem.out.println(file.exists()); // trueFile file1 = new File("D:/aaa");System.out.println(file1.isFile()); // falseSystem.out.println(file1.isDirectory()); // falseSystem.out.println(file1.exists()); // false}
}

创建文件

public boolean createNewFile() 创建一个新的空的文件

public boolean mkdir() 只能创建一级文件夹 (一层文件夹)

public boolean mkdirs() 可以创建多级文件夹

删除文件

public boolean delete​()

delete方法默认只能删除文件和空文件夹。

delete方法直接删除不走回收站

案例

/**目标:File类的创建和删除的方法- public boolean createNewFile() :当且仅当具有该名称的文件尚不存在时,创建一个新的空文件。 (几乎不用的,因为以后文件都是自动创建的!)- public boolean delete() :删除由此File表示的文件或目录。 (只能删除空目录)- public boolean mkdir() :创建由此File表示的目录。(只能创建一级目录)- public boolean mkdirs() :可以创建多级目录(建议使用的)*/
public class FileDemo03 {public static void main(String[] args) throws IOException {File f = new File("file-io-app\\src\\data.txt");// a.创建新文件,创建成功返回true ,反之 ,不需要这个,以后文件写出去的时候都会自动创建System.out.println(f.createNewFile());File f1 = new File("file-io-app\\src\\data02.txt");System.out.println(f1.createNewFile()); // (几乎不用的,因为以后文件都是自动创建的!)// b.mkdir创建一级目录File f2 = new File("D:/resources/aaa");System.out.println(f2.mkdir());// c.mkdirs创建多级目录(重点)File f3 = new File("D:/resources/ccc/ddd/eee/ffff");
//        System.out.println(f3.mkdir());System.out.println(f3.mkdirs()); // 支持多级创建// d.删除文件或者空文件夹System.out.println(f1.delete());File f4 = new File("D:/resources/xueshan.jpeg");System.out.println(f4.delete()); // 占用一样可以删除// 只能删除空文件夹,不能删除非空文件夹.File f5 = new File("D:/resources/aaa");System.out.println(f5.delete());}
}

遍历文件夹

public String[] list() 获取当前目录下所有的"一级文件名称"到一个字符串数组中去返回。

public File[] listFiles()(常用) 获取当前目录下所有的"一级文件对象"到一个文件对象数组中去返回。

调用文件对象的listFiles方法要注意d事项:

当文件对象不存在时,返回null。

当文件对象是一个文件时,返回null。

当文件对象是一个空文件夹时,返回一个长度为0的数组。

当文件对象是一个有内容的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回。

当文件对象是一个有隐藏文件的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回,包含隐藏内容。

当文件对象是一个需要权限才能进入的文件夹时,返回null。

案例

/**目标:File针对目录的遍历- public String[] list():获取当前目录下所有的"一级文件名称"到一个字符串数组中去返回。- public File[] listFiles()(常用):获取当前目录下所有的"一级文件对象"到一个文件对象数组中去返回(重点)*/
public class FileDemo04 {public static void main(String[] args) {// 1、定位一个目录File f1 = new File("D:/resources");String[] names = f1.list();for (String name : names) {System.out.println(name);}// 2.一级文件对象// 获取当前目录下所有的"一级文件对象"到一个文件对象数组中去返回(重点)File[] files = f1.listFiles();for (File f : files) {System.out.println(f.getAbsolutePath());}// 注意事项File dir = new File("D:/resources/ddd");File[] files1 = dir.listFiles();System.out.println(Arrays.toString(files1));}
}

http://www.lryc.cn/news/209471.html

相关文章:

  • 02【Git分支的使用、Git回退、还原】
  • Qt文件 I/O 操作
  • Springboot 使用JavaMailSender发送邮件 + Excel附件
  • 软件工程——期末复习知识点汇总
  • postgresSQL 数据库本地创建表空间读取本地备份tar文件与SQL文件
  • Elasticsearch跨集群检索配置
  • 第九章 软件BUG和管理
  • 大厂面试题-Java并发编程基础篇(二)
  • 测绘屠夫报表系统V1.0.0-beta
  • 『力扣刷题本』:移除链表元素
  • 图像特征Vol.1:计算机视觉特征度量|第一弹:【纹理区域特征】
  • day01:数据库DDL
  • 9、定义错误页
  • 有关多线程环境下的Volatile、lock、Interlocked和Synchronized们
  • spring boot利用redis作为缓存
  • Android Studio 查看Framework源码
  • FileInputStream文件字节输入流
  • 【Qt】窗口和对话框区别、主窗口和二级窗口区别、QMainWindow和QDialog区别
  • Python参数种类介绍
  • react事件机制
  • JAVA删除excel指定列
  • Netty编码器和解码器
  • 大语言模型(LLM)综述(三):大语言模型预训练的进展
  • 如何在Node.js中使用环境变量或命令行参数来设置HTTP爬虫ip?
  • VMware打开共享虚拟机后找不到/mnt/hgfs/文件夹,以及不能拖拽/复制粘贴等操作,ubuntu不能安装VMware tools
  • pytorch 入门 (五)案例三:乳腺癌识别识别-VGG16实现
  • 【QT开发(14)】QT P2P chat 聊天
  • 解决adb root命令时错误 adbd cannot run as root in production builds
  • 操作系统中套接字和设备独立性软件的关系
  • C++ Qt/VTK装配体组成联动连接杆