File类
1、用于表示一个文件或者是文件夹的路径的对象(抽象路径名)
2、路径分为相对路径和绝对路径
相对路径:相对于某个路径而言的路径
绝对路径:从根目录开始的路径
3、File类型构造方法
1、File(String path):把字符串的路径,封装成一个File对象
2、File(String parent, String child):将父级路径和子级路径封装成一个File对象,其实描述的是父级路径和子级路径拼接后的路径
3、File(File parent, String child):将父级File对象路径和字节路径封装成一个File对象,其实描述的也是父级路径和子级路径拼接后的路径。
4、创建文件
1、createNewFile():创建当前File对象所描述的路径的文件 返回值为boolean
2、mkdir():创建当前File对象所描述的路径的文件夹(如果父级路径不存在,那么不会自动创建父级路径)返 回值为boolean
3、mkdirs():创建当前File对象所描述的路径的文件夹(如果父级路径不存在,那么自动创建父级路径)返回 值为boolean
5、File类型的删除方法
1、delete():删除调用者描述的文件或者文件夹
2、注意事项:
1、delete在删除文件夹的时候,只能删除空文件夹
2、delete方法不走回收站
6、File类型的重命名方法
1、renameTo(File dest)
调用者是当前文件或者文件夹的路径对象
参数是目标文件或者文件夹的路径对象
2、注意事项:
如果在同一个文件夹下,修改路径,就是重命名
如果在不同文件夹下,修改路径,就是剪切
7、File类型的常用功能
1、exists():判断当前调用者File对象,是否存在
2、isFile():判断当前调用者File对象,是否是文件
3、isDirectory():判断当前调用者File对象,是否是文件夹
4、getAbsolutePath():获取当前File对象的绝对路径
5、getPath():获取的就是在构造方法中封装的路径
6、getName():获取最底层的简单的文件或者文件夹名称(不包含所造目录的路径)
7、length():获取文件的字节个数
该方法被文件File对象调用时,返回的是文件的字节个数
该方法被文件夹File对象调用时,返回的数据是不确定的
8、String[] list():获取当前文件夹下的所有文件和文件夹的名称,到一个字符串数组中
9、File[] listFiles():获取当前文件夹下的所有文件和文件夹的File对象,到一个File对象数组中
8、练习
import java.io.File; import java.util.Scanner; /* * 键盘录入一个文件夹路径 *打印这个文件夹下的所有文件的绝对路径(包含子文件夹的内容) */ public class Test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); File f = new File(s); printAll(f); } public static void printAll(File f) {//使用递归 if(f.exists()&&f.isDirectory()) { System.out.println(f.getPath()); File[] fs = f.listFiles(); for(int i=0;i<fs.length;i++) { printAll(fs[i]); } }else if(f.exists()){ System.out.println(f.getPath()); } } }