File文件类
File:文件和目录路径名的抽象表示形式(表示一个文件或者路径)
File类的构造方法
-
File(String pathname)
根据一个路径得到File对象Java中路径的两种写法:
- 把单斜杠改成双斜杠
C:\Users\Jascen\Desktop
- 把斜杠改为反斜杠
- 把单斜杠改成双斜杠
C:/Users/Jascen/Desktop
File(String parent,String child)
根据一个目录和一个子文件/目录得到File对象File(File parent,String child)
根据一个File对象和一个子文件/目录得到File对象
File类的创建功能
boolean createNewFile()
创建文件boolean mkdir()
创建文件夹boolean mkdirs()
创建多层文件夹
PS:若目录忘记添加盘符名,则默认为当前项目文件夹
File类的重命名
boolean renameTo()
把文件重命名为指定的文件路径.
//把文件a.txt重命名为b.txt
File file=new File("C:\Users\Jascen\Desktop\a.txt");
File file2=new File("C:\Users\Jascen\Desktop\b.txt");
file.renameTo(file2);
PS:若路径名相同,就是改名。若路径名不同,就是改名并且剪切到该路径。
File类的删除功能
boolean delete()
删除指定路径文件/文件夹
PS:①在Java程序中删除文件/文件夹,不会存在在回收站中 ②不能删除非空文件夹
File类的判断功能
boolean isDirectory()
判断是否是目录boolean isFile()
判断是否是文件boolean exists()
判断是否存在boolean canRead()
判断是否可读boolean canWrite()
判断是否可写boolean isHidden()
判断是否隐藏
File类的获取功能
String getAbsolutePath()
获取绝对路径String getPath()
获取路径String getName()
获取名称long length()
获取长度。字节数long lastModified()
获取最后一次的修改时间,毫秒值String[] list()
获取指定目录下的所有文件或者文件夹的名称数组File[] listFiles()
获取指定目录下的所有文件或者文件夹的File数组
文件名称过滤器
File类提供了两个文件过滤器方法
public String[] list(FilenameFilter filter)
public File[] listFiles(FileFilter filter)
这两个方法在返回数组前就可以把符合条件的文件过滤出来
例:判断指定目录下是否有后缀名为.jpg的文件,如果有,就输出该文件名称
public class FileDemo02 {
public static void main(String[] args) {
// TODO Auto-generated method stub
File file = new File("C:/Users/Jascen/Desktop/A");
String[] subFileNames = file.list(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
// TODO Auto-generated method stub
return name.endsWith(".jpg");//返回以jpg结尾的文件名
}
});
//通过迭代器输出
for (String str : subFileNames) {
System.out.println(str);
}
}
}