一·File类

1.1基本概念
  • java.io.File类主要用于描述文件或目录路径的抽象表示信息,可以获取文件或目录的特征信息, 如:大小等 。

1.2常用方法
方法声明功能概述
File(String pathname) 根据参数指定的路径名来构造对象
File(String parent, String child) 根据参数指定的父路径和子路径信息构造对象
File(File parent, String child) 根据参数指定的父抽象路径和子路径信息构造对象
boolean exists() 测试此抽象路径名表示的文件或目录是否存在
String getName() 用于获取文件的名称
long length() 返回由此抽象路径名表示的文件的长度
long lastModified() 用于获取文件的最后一次修改时间
String getAbsolutePath() 用于获取绝对路径信息
boolean delete() 用于删除文件,当删除目录时要求是空目录
boolean createNewFile() 用于创建新的空文件
boolean mkdir() 用于创建目录
boolean mkdirs() 用于创建多级目录
File[] listFiles() 获取该目录下的所有内容
boolean isFile() 判断是否为文件
boolean isDirectory() 判断是否为目录
File[] listFiles(FileFilter filter) 获取目录下满足筛选器的所有内容
public class FileTest {
 public static void main(String[] args) {
     //1.构造File类型对象与f:\a.txt文件关联
     File file = new File("f:/a.txt");
     //2.判断文件是否打印并打印相关的信息后删除文件
     if(file.exists()){
         System.out.println("文件的名字是"+file.getName());
         System.out.println("文件的大小是"+file.length());
         long ldate = file.lastModified();
         Date date =new Date(ldate);
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         String format = sdf.format(date);
         System.out.println("文件的最后的修改时间"+format);
         System.out.println("文件的绝对路径信息是"+file.getAbsolutePath());
         System.out.println(file.delete()?"文件删除成功":"文件删除失败");
     }else{
         //如果不存在则创建新的空文件
         try {
             System.out.println(file.createNewFile()?"文件创建成功":"文件创建失败");
         } catch (IOException e) {
             e.printStackTrace();
         }
     }
     System.out.println("-------------------------");
     //文件的创建和删除
     File file2 = new File("f:ddd/aaa/ccc");
     if(file2.exists()){
         System.out.println("目录的名称是"+file2.getName());
         System.out.println(file2.delete()? "目录删除成功": "目录删除失败");
     }else{
         System.out.println(file2.mkdirs()?"目录创建成功":"目录创建失败");
     }
     System.out.println("----------------");
     //将指定目录中的所有内容打印出来
     File[] files = file2.listFiles();
     for(File tf: files){
         String name = tf.getName();
         // 判断是否为文件,若是则直接打印文件名称
         if (tf.isFile()) {
             System.out.println(name);
         }
         // 若是目录,则使用[]将目录名称括起来
         if (tf.isDirectory()) {
             System.out.println("[" + name + "]");
         }
     }
     System.out.println("=========================");
     //目录中所有内容获取的同时进行过滤
     FileFilter fileFilter = (File pathname) ->{return pathname.getName().endsWith(".txt");};
     File[] filesArray = file2.listFiles(fileFilter);
     for (File tf : filesArray) {
         System.out.println(tf);
     }
 }
}

 

posted on 2020-11-03 22:19  我说我是大佬你信么  阅读(93)  评论(0)    收藏  举报