文件操作 java.io.File

    ①创建删除文件及目录 ②查看文件及目录属性 ③文件过滤器 (PS:不包括文件读写数据)

 

1.单个文件

  创建单个文件,查看属性,删除单个文件。

 1 package tmp;
 2 
 3 import java.io.File;
 4 import java.io.IOException;
 5 
 6 public class File_createNewFile {
 7     public static void main(String[] args) throws IOException {
 8         
 9          //在当前目录下(当前项目的根目录)创建一个文件test.txt
10         File file = new File("."+File.separator+"test.txt");
11         
12         if(!file.exists()){
13             file.createNewFile();
14             System.out.println("文件创建完毕!");
15         }else{
16             System.out.println("该文件已存在!");
17         }
18         
19         System.out.println(file.getName());    //获取文件名    String
20         System.out.println(file.length());     //获取文件长度 long ,单位:字节
21         System.out.println(file.canRead());    //是否可读
22         System.out.println(file.canWrite());   //是否可写
23         System.out.println(file.isAbsolute()); //是否是一个绝对路径
24         System.out.println(file.isFile());     //是否是文件
25         System.out.println(file.isDirectory());//是否是目录
26         System.out.println(file.isHidden());   //是否隐藏
27         System.out.println(file.exists());     //是否存在
28         
29         File[] files = file.listFiles();       //获取指定路径下子目录和子文件
30         for (File f : files) {
31             System.out.println(f);
32         }
33         
34         File file2 = new File("."+File.separator+"test2.txt");
35         file.renameTo(file2);                  //重命名/剪切
36         
37         file.delete();                        //删除文件
38         System.out.println(file.exists());    //文件不存在了
39         
40         String path = file.getAbsolutePath();//获取绝对路径
41         System.out.println(path);
42     }
43 }

 

  2.一级目录

    一级目录的创建,删除。

 1 import java.io.File;
 2 
 3 // 使用File创建一个目录
 4 public class File_mkdir {
 5     public static void main(String[] args) {
 6         //在当前目录下创建一个目录:demo
 7 //        File dir = new File("a/b/demo.txt");  // 只有当a/b两级目录存在时可创建,否则不行。
 8         File dir = new File("demo.txt");
 9         if(!dir.exists()){
10             dir.mkdir();
11             System.out.println("目录已创建");
12         }else{
13             System.out.println("该目录已存在!");
14         }
15         dir.delete();  // 如果删除的是目录,并且目录下有子文件或者子目录则会删除失败。
16         System.out.println(dir.exists());
17     }
18 }

 

3.多级目录

  多级目录的创建,删除。

 1 import java.io.File;
 2 
 3 //创建一个多级目录
 4 public class File_mkdirs {
 5     public static void main(String[] args) {
 6         //在当前目录下创建目录:a/b/c/d/e/f
 7         File dir = new File("a"+File.separator+"b"+File.separator+
 8             "c"+File.separator+"d"+File.separator+"e"+File.separator+"f");
 9         
10         if(!dir.exists()){
11             //mkdirs在创建当前File表示的目录时会将所有不存在的父目录一同创建出来。而mkdir不具备这样的功能.
12             dir.mkdirs();
13             System.out.println("目录已创建!");
14         }else{
15             System.out.println("目录已存在!");
16         }
17         
18         delete(new File("a"));
19     }
20 
21     //删除file文件或者file目录及其所有文件
22     public static void delete(File file){
23         if(file.isDirectory()){
24             //将该目录子项全部清除            
25             File[] subs = file.listFiles();
26             for(int i=0;i<subs.length;i++){
27                 delete(subs[i]);
28             }
29         }
30         file.delete();
31     }
32 }

 

4.文件过滤器

 1 import java.io.File;
 2 
 3 //获取一个目录中的所有子项
 4 public class File_listFiles {
 5     public static void main(String[] args) {
 6 
 7         File dir = new File(".");
 8         /*
 9          * boolean isFile()
10          * 判断当前File表示的是否为文件
11          * 
12          * boolean isDirectory()
13          * 判断当前File表示的是否为目录
14          */
15         //判断是否为目录
16         if(dir.isDirectory()){
17             /*
18              * File[] listFiles()
19              * 返回的数组中每个元素为该File表示的目录中的一个子项
20              */
21             File[] subs = dir.listFiles();
22             for(int i = 0; i < subs.length; i++){
23                 System.out.println(subs[i].getName());
24             }
25         }
26         
27     }
28 }
listFiles

相关文章:

  • 2021-08-07
  • 2021-11-28
  • 2022-12-23
  • 2021-12-09
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-03-01
  • 2022-12-23
  • 2021-05-15
  • 2021-11-29
  • 2021-10-05
  • 2021-10-17
  • 2021-05-20
相关资源
相似解决方案