JAVA File

File类

File类是文件和目录路径的抽象表示.该类主要用于目文件和目录的建立,查找,删除java

构造方法

File(File parent, String child) 
//从父抽象路径名和子路径名字符串建立新的 File实例。  
File(String pathname) 
//经过将给定的路径名字符串转换为抽象路径名来建立新的 File实例。  
File(String parent, String child) 
//从父路径名字符串和子路径名字符串建立新的 File实例。  
File(URI uri) 
//经过将给定的 file: URI转换为抽象路径名来建立新的 File实例。

建立

boolean createNewFile() 
//若是不存在该名称的文件,就建立该文件
boolean mkdir() 
//若是不存在该名称的文件夹,就建立该文件夹 
boolean mkdirs()
//若是不存在该文件夹,就建立该多级文件夹

删除

public boolean delete()
//删除文件或者文件夹,只能删除空文件夹
//如果要删除非空文件夹必需要进行递归操做

重命名

public boolean renameTo(File dest)
//把文件重命名为指定的文件路径
//若是路径名相同,就是更名。
//若是路径名不一样,就是更名并剪切。

判断

public boolean isDirectory()//判断是不是目录
public boolean isFile()//判断是不是文件
public boolean exists()//判断是否存在
public boolean canRead()//判断是否可读
public boolean canWrite()//判断是否可写
public boolean isHidden()//判断是否隐藏

File类的获取功能

public String getAbsolutePath()//获取绝对路径
public String getPath()//获取相对路径
public String getName()//获取名称
public long length()//获取长度。字节数
public long lastModified()//获取最后一次的修改时间,毫秒值
public String[] list()//获取指定目录下的全部文件或者文件夹的名称数组==
public File[] listFiles()//获取指定目录下的全部文件或者文件夹的File数组

文件名称过滤器

public String[] list(FilenameFilter filter)//返回符合要求的文件或文件夹的字符串数组
public File[] listFiles(FilenameFilter filter)//返回符合要求的文件或文件夹的File数组

Demo

文件过滤器的使用

import java.io.File;
import java.io.FilenameFilter;

public class FileTest {
    public static void main(String args[]){
        File desktop=new File("C:\\Users\\19455\\Desktop");
        //打印桌面上的全部png文件名
        String[] jpg=desktop.list(new FilenameFilter() {
            @Override
            public boolean accept(File dir, String name) {
                File file=new File(dir,name);
                return file.isFile()&&file.getName().endsWith(".png");
            }
        });
        for(String s:jpg)
            System.out.println(s);
    }
}

递归打印一个文件夹下的全部文件名

import java.io.File;

public class FileTest {
    public static void printAllFileName(File file){
        for(File f:file.listFiles())
            if(f.isFile())
                System.out.println(f.getName());
            else
                printAllFileName(f);
    }
    public static void main(String args[]){
        printAllFileName(new File("D:\\英雄时刻"));
    }
}
相关文章
相关标签/搜索