1,用来将文件或文件夹封装成对象。---->File f = new File(“f:”+File.separator+”Demo01.txt”) ;
2,方便对文件或文件夹的属性信息进行操作。
3,File对象可以作为参数传递给流的构造函数。
---------->File对象常见功能
(1)获取
-->获取文件名称
-->获取文件路径
-->获取文件大小
-->获取文件修改时间
package org.panda.io;import java.io.File;import java.sql.Date;import java.text.DateFormat;import java.text.SimpleDateFormat;public class FileDemo01 { public static void main(String[] args) { getDemo01(); } private static void getDemo01() { File f = new File("f:"+File.separator+"Demo01.txt") ; //将文件或文件夹封装成File对象 String name = f.getName() ; //取得文件名称 String path = f.getPath() ; //取得文件的相对路径 String absPath = f.getAbsolutePath() ;//取得文件的绝对路径 long len = f.length() ; //取得文件长度 long time = f.lastModified() ; //取得文件上次修改时间 //声明并实例化对象 Date date = new Date(time) ; //定义时间显示格式 DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG); SimpleDateFormat sdf = new SimpleDateFormat("yy-MM-dd") ; String str_time = dateFormat.format(date) ; String str_time1 = sdf.format(date) ; System.out.println("name: "+name); System.out.println("path: "+path); System.out.println("absPath: "+absPath); System.out.println("len: "+len); System.out.println("time: "+time); System.out.println("time: "+str_time); System.out.print("time: "str_time1); } }
(2)深度遍历
需求:对指定目录进行所有内容的列出(包含子目录中内容 )---->称为深度遍历
package org.panda.io;import java.io.File;public class FileTestDemo01 { public static void main(String[] args) { File dir = new File("f:\\EOS") ; listAll(dir) ; } private static void listAll(File dir) { //打印目录 System.out.println("dir:"+dir.getAbsolutePath()) ; //获取指定dir中的所有file File[] files = dir.listFiles() ; //循环遍历 for(int i=0;i
(3) 递归
函数自身调用或间接调用到自身。
一个功能在被重复使用,并每次使用时,参与运算的结果和上一次调用有关----这时,使用递归来解决问题。
注意:递归一定要明确条件,否则容易栈溢出