File的小结:
1.属于java.io.File,不能操作文件内部数据哦! 2. (1)创建删除一个目录或者文件(5个) (2)属性信息(名字,长度,可读写,隐藏,是否是文件目录,7个)
(3)一个目录的子项信息(2个)
******************************************************************************************
知识点1.(创删5个)
1.创建一个文件流程,判断有没有(file.exists()),然后file.createNewFile(); 2.删除一个文件流程,判断有没有(file.exists()),然后file.delete(); 3.创建一个目录流程,判断有没有(dir.exists()),然后dir.mkdir();或者dir.mkdirs(); 4.删除一个目录流程,判断有没有(dir.exists()),然后dir.delete();只能删除空目录 5.删除多级目录,里面含有文件或者目录,使用递归方式,注意不要用if,else.
递归:
public static void delete(File file){ if(file.isDirectory()){ File[] subs=file.listFiles(); for(File sub:subs){ delete(sub); } } file.delete();//不能用if else,不然最后一个目录删不了 }
知识点2.(属性信息7个)
File file=new File("."+File.separator+"demo.txt");//当前目录可以不写./ String name=file.getName(); long length=file.length(); boolean canWrite=file.canWrite(); boolean canRead=file.canRead(); boolean isHidden=file.isHidden(); boolean isFile=file.isFile(); boolean isDirectory=file.isDirectory(); 知识点3.(获取目录的子项信息)
(1)获取目录子项 dir.listFiles(); (2)获取目录中的部分子项重载listFiles();里面放一个文件过滤器:如下: dir.listFiles(new FileFilter(){ public boolean accept(File file){ System.out.println(file.getName());//都进去过 return file.getName().startsWith("."); } });