Java基础知识之文件操作(一)——File类遍历文件夹
2017-03-26 21:54
1021 查看
1.创建文件夹和文件
2.判断文件是文件夹还是文件,以及文件的可读可写权限
3.获取文件夹/文件的属性(修改时间,大小,以及路径)
路径相关
文件的最后的修改时间
文件的大小:file.length()可以获得文件内容长度,想获得文件夹的大小可采用递归的方式
4.遍历硬盘中的所有文件,找出以 mp3结尾的文件。
方法与获取文件夹大小一样,采用递归的方式
调用该方法
File file1 = new File("test1"); File file2 = new File("test2/test2"); File file3 = new File("test3.txt"); //判断文件是否存在 如果不存在 if (!file1.exists()) { //则创建一个文件夹 file1.mkdir(); } //创建给定路径的多个文件夹 file2.mkdirs(); //创建文件 file3.createNewFile();
2.判断文件是文件夹还是文件,以及文件的可读可写权限
file1.isDirectory();//判断file对象对应的是否为目录(文件夹) file1.isFile(); //判断file对象对应的是否为文件 file1.canRead(); //判断file对象所对应的文件和目录是否可读 file1.canWrite(); //判断file对象所对应的文件和目录是否可写
3.获取文件夹/文件的属性(修改时间,大小,以及路径)
路径相关
String path = file.getPath(); //得到File对象所对应的路径名 String path = file.getAbsolutePath(); //得到File对象所对应的绝对路径名 File file2 = file.getAbsoluteFile(); //得到File对象所对应的绝对路径 String parent = file.getParent(); //得到File对象文件所在的父路径名
文件的最后的修改时间
//得到File对象文件最后一次修改的时间 值为long 路径一定要正确,不然最后值为0 long time = file.lastModified(); //设置日期格式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 EEEE HH:mm:ss"); //将long值转换为常规显示 最后得到值为 2017年03月04日 星期六 11:35:08 String date = sdf.format(time);
文件的大小:file.length()可以获得文件内容长度,想获得文件夹的大小可采用递归的方式
public static long getFileLength(File file) { // 定义文件大小 值为long类型 得到的为字节 long size = 0; // 列出文件夹下所有的文件 File[] files = file.listFiles(); // 如果文件为空 if (files == null) { return 0; } // 遍历当前文件夹下所有的文件 for (File subfile : files) { // 如果是文件夹 if (subfile.isDirectory()) { // 递归调用自己,继续计算文件夹下文件的大小然后相加 size = size + getFileLength(subfile); } else { // 如果是文件则 直接获取文件内容长度然后相加 size = size + subfile.length(); } } return size; }
4.遍历硬盘中的所有文件,找出以 mp3结尾的文件。
方法与获取文件夹大小一样,采用递归的方式
public static void referAllFile(File file) { // 列出文件夹下所有的文件 File[] files = file.listFiles(); // 如果文件为空 if (files == null) { return; } // 遍历当前文件夹下所有的文件 for (File subfile : files) { // 如果是文件夹 if (subfile.isDirectory()) { // 则递归调用,查找本文件夹下的文件内容 referAllFile(subfile); } else { // 如果是符合的文件则 直接打印路径 //subfile.getName()得到文件的名字 //subfile.getName().endsWith("mp3") 以mp3结尾的文件 //subfile.getName().contains("mp3") 包含mp3 字符的文件 if (subfile.getName().endsWith("mp3")) { //此处直接打印 System.out.println(subfile.getName()); } } } }
调用该方法
//获取系统盘名 就是C:\ D:\ E:\ F:\ 盘 File[] files = File.listRoots(); //遍历所有系统盘 for (File file : files) { //调用referAllFile()方法 则可以遍历所有系统文件 referAllFile(file); }
相关文章推荐
- JAVA基础初探(十二)Map接口及其常用实现类(HashMap)、File类详解(概述、创建、删除、重命名、文件属性读取/设置、遍历文件夹)
- Java中如何利用File类递归的遍历指定目录中的所有文件和文件夹
- Java遍历文件夹,重命名文件,删除文件,复制文件等操作
- Java基础知识系列——文件操作
- java:File类中对文件或目录进行操作的常用方法以及遍历文件夹下面的文件
- Java基础知识之文件操作(二)——IO流复制文件
- java语言基础(79)——File类的基础使用java文件操作
- Java基础———重温关于的文件读写操作,File类,FileInputStream类等的使用
- 黑马程序员--IO流和文件操作--java学习日记8(基础知识)
- Java中遍历一个文件夹下所有文件及目录的操作
- java15.语言进阶------本地文件操作---遍历文件夹
- Java基础知识之文件操作(三)——NIO获取文件属性
- Java本地文件操作(五)遍历文件夹
- java 遍历递归操作(改名) 文件/文件夹
- java基础知识回顾之javaIO类--File类应用:递归深度遍历文件
- java File 遍历某路径下的文件和文件夹操作
- java循环遍历文件夹及其子文件夹和文件
- JAVA文件操作类和文件夹的操作
- Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)
- java 对文件的删除、剪切、移动和创建文件夹操作