文章目录

  • 1.**FILE类的介绍**
  • 2.**File类,是平台无关性的类**
  • 3.**File类创建,删除文件的操作**
    • File类的创建文件
    • File类的创建目录
    • File类的删除文件以及删除目录
  • 4.**FILE类判断文件是否存在**
  • 5.**FILE类获取文件的名字**
  • 6.**FILE类获取文件的绝对路径**
  • 7.**FILE类获取一个文件夹下的所有文件**
  • 8.**FILE类打印一个文件夹下的所有特定文件**
  • 9.**FILE类打印一个文件夹下的所有文件(包括子文件夹)**
1.FILE类的介绍
  • java.io.File类

    • 计算机存储路径,目录,文件
    • File类将计算机中的路径,目录,文件做成一个对象
    • 提供很多的方法,操作路径,文件和方法
  • 计算机操作系统
    • 目录就是文件夹(DIrectory),不能存储数据,是文件的容器
    • 文件(File),可以存储数据
    • 路径(path),一个文件或者目录,在计算机中的存储位置
    • java中的路径‘/’和‘\’没有区别
2.File类,是平台无关性的类

三种方法创建File类的对象

  • File(pathname);

​ 不管文件的路径地址对不对,在计算机中是否存在,都可以创建一个文件对象。

  • File(parent,child);

​ 要求,子类的文件地址必须要在父类的地址下面

  • File(file,pathname);

​ 这里和上面的方法,不一样,因为传入的一个是对象,可以调用一些其他的方法。

3.File类创建,删除文件的操作
File类的创建文件
public static void CreateFileText() throws IOException {File file =  new File("e:/a.txt");boolean b = file.createNewFile();System.out.println(b);
}

要点:创建的路径可以存在,也可以不存在

实例:如果创建的文件路径已经存在,那么返回false,不存在,则返回true

File类的创建目录
public static void CreateDir(){File file = new File("e:/a/b/c/d");boolean b=  file.mkdirs();System.out.println(b);
}

要点:(1)创建的路径可以存在,也可以不存在(2)一定方法要是mkdirs();最后的s千万不能少,不然就不能创建多级目录了。

实例:如果创建的文件路径已经存在,那么返回false,不存在,则返回true

优点:创建多级目录的情况下,效率会很高。

File类的删除文件以及删除目录
public static void deletefile(){// File file = new File("e:/a/b/c/d");File file =  new File("e:/a.txt");boolean b=  file.delete();System.out.println(b);}

特性:删除文件有风险,一旦删除,就永远不存在。因为删除是不走回收站的,相当于在删除文件时执行的时shift+delete键来完全删除文件。所以删除有风险,执行需谨慎。

一般的删除文件(回收站中会保留删除的文件)

4.FILE类判断文件是否存在
public static void isExitfile(){File file = new File("E:\\JAVASE");boolean b = file.exists();System.out.println(b);
}

要点:判断文件是否存在,其中大小写字母可以互相变化,即上述的“E:\JAVASE”也可以写成“E:\javase“返回的值跟之前的是一样的

实例:如果存在就放回true,不存在就返回false

5.FILE类获取文件的名字
public static void testGetName(){File file = new File("E:\\JAVASE");String name  = file.getName();System.out.println(name);
}

要点:返回的是最后一个路径的值

实例:上述的例子,得到name的值为”JAVASE"

6.FILE类获取文件的绝对路径
public static void testGetAbsoluteFile(){File file = new File("bin");File absoluteFile = file.getAbsoluteFile();System.out.println(absoluteFile);
}

要点:返回的是一个文件的绝对路径。不存在则在该文件夹下创建一个。如果对应的路径存在,就返回该绝对路径

实例:上述因为是在javaSE目录下创建的,故而输出的是“E:\javaSE\bin”

7.FILE类获取一个文件夹下的所有文件
public static void findListfile(){File file =  new File("c:");File[] fileArray = file.listFiles();System.out.println(fileArray.length);for(File file1 : fileArray){    //范围for打印输出System.out.println(file1);}
}

要点:listFiles()函数返回的是一个File类型的数组;运用范围for打印数组中的每一个元素

实例:上述打印的是我c盘下的所有文件夹的名字(c盘的根目录下不能创建单独文件)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Bz2lEHDN-1665814543502)(C:\Users\李小宝\AppData\Roaming\Typora\typora-user-images\image-20221015140702332.png)]

8.FILE类打印一个文件夹下的所有特定文件
public static void testListFilesFilter(){File file =  new File("c:/a");File[] fileArray = file.listFiles(new MyFileFilter());System.out.println(fileArray.length);for(File file1 : fileArray){    //范围for打印输出System.out.println(file1);}
}

要点:listFiles的方法中可以传入一个对象(本例中是过滤器对象),做出筛选

public class MyFileFilter implements FileFilter {@Overridepublic boolean accept(File filename) {return filename.getName().endsWith(".docx");}
}

要点:实现FileFilter接口中的方法accept(),返回满足筛选条件筛出来的文件

实例:本例中筛选出来的是后缀名为.docx的文件

9.FILE类打印一个文件夹下的所有文件(包括子文件夹)
public static void getDir(File srcDir){System.out.println(srcDir);File[] fileArray = srcDir.listFiles();for(File file1 : fileArray){if(file1.isDirectory()){getDir(file1);}else{System.out.println(file1);//file1.delete();如果这里执行了后果将...}}
}
public static void main(String[] args) {getDir(new File("c:/Program Files"));
}

要点:算法主要的思想是递归,遇到文件夹则需要再进入文件夹下的文件,一直到没有文件的时候才行

注意:不要delete

   if(file1.isDirectory()){getDir(file1);}else{System.out.println(file1);//file1.delete();如果这里执行了后果将...}

上面程序运行的主函数

public class FileDemo(){public static void main(String[] args){//实例getDir(new File(""));}
}

java---File类笔记(简单介绍)相关推荐

  1. java File类笔记

    一.建立文件 windows环境下: File file1 = new File("C:/test/a.txt"); File file2 = new File("C:\ ...

  2. 探究Java File类中list()、listFiles()的使用及区别,认识和使用匿名内部类

    转载自     探究Java File类中list().listFiles()的使用及区别,认识和使用匿名内部类 内容概要: 1.认识File类: 2.File的构造函数: 3.list()及其重载方 ...

  3. Java Scanner类的详细介绍(Java键盘输入)

    Java Scanner类的详细介绍(Java键盘输入) 一.Scanner类的简单使用 二.Scanner类的详细介绍 1.判断输入数据类型 2.next()与nextLine()的区别 3.求多个 ...

  4. java File类 常用相关函数

    java File类 相关函数 1.构建函数 2.判断相关函数 4.创建相关函数 5.删除相关函数 6.获取相关函数 1.构建函数 /*** File 构造方法* file 常用构造方法* 1: Fi ...

  5. Java File类总结和FileUtils类

    Java File类总结和FileUtils类 文件存在和类型判断 创建出File类的对象并不代表该路径下有此文件或目录. 用public boolean exists()可以判断文件是否存在. Fi ...

  6. Android中PackageManager类的简单介绍

    1.PackageManager这个类,表层意思是包管理者,既然可以管理包,那么包下的一些东西便可以获取,其中可以获取应用图标和应用名称以及包名. 通过下面一行代码实例化PackageManager类 ...

  7. java Math类的常用方法介绍

    java Math类的常用方法介绍 代码块 public class MainTest {public static void main(String[] args) {//求sin值double s ...

  8. java File类

    java File类 今天我要总结一下java File类.这个是一个很重要的类. 首先是我画的思维导图. 还写了一些自己写的代码. /*** Date : 2017/6/24* Author : H ...

  9. java reader_Java之字符输入流,Reader类的简单介绍

    各位小伙伴们大家好,在之前的文章中,小编介绍了Java之文件复制的简单介绍,多是一些关于字节的知识,这次小编要介绍的是字符输入流Reader类,具体如下: java.io.Reader:字符输入流,是 ...

  10. java file类详解_Java File类详解及IO介绍及使用

    我是一个CPU:这个世界慢!死!了!,可以感受到CPU,内存和硬盘之间的速度比较. 文件的本质 OS(操作系统)的目的就是可以让上层程序可以通过一种统一的方式去拿到无论什么磁盘里的文件(即一段字节流) ...

最新文章

  1. 现状,疑问,思考,探索,选择
  2. 当红网络财富人生 用科技狂澜财富成为首富
  3. 【面试题】使用 HashMap 还是 TreeMap
  4. Fedora 32正式版今天发布:提供官方下载地址
  5. python File write()方法
  6. 【GIF动画+完整可运行源代码】C++实现 计数排序——十大经典排序算法之八
  7. 按单词逆序句子(含标点)
  8. O(V*n)的多重背包问题
  9. PAT乙级(1015 德才论)
  10. 数学建模模板(让你也能写论文的模板)
  11. 计算机程序设计实验报告总结,c语言实验总结(大一c语言实验报告总结)
  12. 毕业设计——基于SSM的在线抽奖系统(构思)
  13. 博客整理:人在运维囧途系列学习目录
  14. Java的泛型---(英雄联盟集合嵌套案例)
  15. 苹果Mac系统彻底关闭开机声音duang~
  16. dhcp计算机毕业论文,计算机网络毕业设计(论文)dhcp在校园网中的应用.pdf
  17. 我打算写一个《程序员的成长课》
  18. python控制其它软件_python——实现ERP软件自动化操作
  19. 机房服务器系统监控软件,机房服务器系统监控软件
  20. docker仓库Repository和harbor仓库

热门文章

  1. win10密码忘了怎么办_笔记本密码忘了怎么办
  2. 一个资源丰富的在线小程序社区推荐
  3. 华为云总裁称云计算市场第二场竞争刚开始 | 搜狗纽交所上市,市值近53亿美元
  4. ZooKeeper示例 实时更新server列表
  5. requests+selenium 爬取企查查网,1000+条数据轻轻松松
  6. Python添加下拉菜单
  7. 计算机的管理软件有哪些,电脑里有很多文件,很乱但是都有用,有什么管理软件值得推荐?...
  8. win10服务器cpu占用过高,解决win10服务主机内存和cpu高占用的解决方法
  9. imac 2017升级内存
  10. 高三老师给大一学生的一封信