java File类

文件和目录路径名的抽象表示形式。一个 File 对象可以代表
一个文件或目录
可以实现获取文件和目录属性等功能
可以实现对文件和目录的创建、删除等功能
File 不能访问文件内容

1.File类操作文件

可以使用File类创建一个文件对象,File类构造方法:

(1)File(String  pathname)

该构造方法通过将给定路径名字字符串转换为抽象路径来创建一个新File实例。

File file = new  File("D:/test.txt")或者  File  file  =new  File("D:\test.txt")

(2)File(String  parent ,String child)

该构造方法根据定义的父路径和子路径字符串(包含文件名)创建一个新的File实例。

(3)File(File f ,String child)

该构造方法根据parent抽象路径名和child路径名字符串创建一个新File实例。

使用File类创建一个文件对象:File  file  =  new File("D:/myword","word.txt");

 1 import java.io.File;
 2 import java.io.IOException;
 3 
 4 public class TestFile {
 5     //使用File类操作文件
 6     public static void main(String[] args) throws IOException {
 7         //创建File类的对象
 8         File f1=new File("D:\a.txt");  //绝对路径
 9         File f2=new File ("D:/a.txt");
10         File f3=new File("a.txt");//相对路径
11         File f5=new File("D:\test"); //没有后缀  目录
12         File f4=new File(f5,"a.txt");
13         File f6=new File("D:"+File.separator+"a.txt");//separator获取使用平台的文件路径分隔符
14         /**File操作文件的相关方法*/
15         System.out.println(f3.createNewFile());//在项目下创建
16         System.out.println(f1.delete()); //直接从磁盘上删除
17         System.out.println(f1.exists()); //不存在false,
18         System.out.println("绝对路径"+f3.getAbsolutePath());//绝对路径F:java学习第二阶段4第四章源码10.File类FileProjecta.txt
19         System.out.println("相对路径:"+f3.getPath());//相对路径:a.txt
20         System.out.println("获取文件名:"+f3.getName());//获取文件名:a.txt
21         System.out.println(f3.toString());  //相对路径  a.txt
22         System.out.println("是否是文件"+f3.isFile());//true
23         System.out.println("是否是文件:"+f5.isFile());//false
24         System.out.println("文件中内容的字节数:"+f3.length());//7 一个汉字占2个字节 一个字母或空格占一个
25     }
26 }

2.File类操作目录

 1 import java.io.File;
 2 
 3 public class TestDirectory {
 4     public static void main(String[] args) {
 5         //创建File类的对象
 6         File f=new File("D:"+File.separator+"test");
 7         f.mkdir();  //用于创建目录 ,单层目录
 8         System.out.println("目录是否存在"+f.exists());//true
 9         System.out.println("是目录还是文件:"+f.isDirectory());//true
10         System.out.println("是目录还是文件:"+f.isFile());//true
11         
12         File f2=new File("D:\aa\bb\cc");
13         f2.mkdirs(); //用于创建目录,多层目录
14         f.delete();
15         File parent=f2.getParentFile(); //获取cc目录的父级目录
16         System.out.println(parent);//D:\aa\bb
17         parent.delete(); //delete删除目录时,只允许删除空目录
18         f2.delete();//删除cc
19         parent.delete();//删除bb
20         
21         File f3=new File("D:\");
22         String [] strFile=f3.list();
23         System.out.println(strFile.length); //数组中元素的个数 24
24         for(String s:strFile){
25             System.out.println(s);//没有路径前缀
26         }
27         System.out.println("
--------------------------------
");
28         File [] flist=f3.listFiles();
29         for(File file:flist){
30             System.out.println(file);//有路径前缀
31         }        
32     }
33 }
原文地址:https://www.cnblogs.com/bfcs/p/10359023.html