File 类是文件和目录路径的抽象表示. 该类主要用于目文件和目录的创建, 查找, 删除
构造方法
- 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:\\ 英雄时刻"));
- }
- }
来源: http://www.bubuko.com/infodetail-3210573.html