File

来源:互联网 发布:麒麟芯片 知乎 编辑:程序博客网 时间:2024/06/05 05:06

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(".");
}
});


原创粉丝点击