Java中关于File对象的介绍

File对象(文件)的介绍

查看是文件还是目录

public boolean isFile():返回一个布尔值代表是否是文件
public boolean isDirectory():返回一个布尔值代表是否是目录

//创建一个file对象
File file = new File("D:\\BigFoot_WOW_5.1.2.7.exe");
System.out.println(file);                       //D:\BigFoot_WOW_5.1.2.7.exe
//判断是否是文件
System.out.println(file.isFile());              //true
//判断是否是目录
System.out.println(file.isDirectory());         //false

创建一个目录

file对象也可以代表一个不存在的目录或文件
public boolean mkdir():创建一个单级目录
public boolean mkdirs():创建一个多级目录

File file1 = new File("D:\\Study");
//创建一个目录
file1.mkdir();
File file2 = new File("D:\\1\\2\\3");
//创建一个多级目录
file2.mkdirs();

创建一个文件

public boolean createNewFile() throws IOException

File file = new File("D:\\Study.txt");
boolean newFile = file.createNewFile();
System.out.println(newFile);

判断一个目录或者文件是否存在

public boolean exists()

File file2 = new File("D:\\1\\2\\3");
//创建一个多级目录
file2.mkdirs();

//判断目录是否存在
System.out.println(file2.exists());             //true

得到一个目录下的子目录和文件

public File[] listFiles()得到一个目录下所有的子目录和文件

//得到一个目录下的所有子目录和文件
File file3 = new File("E:\\");
File[] files = file3.listFiles();
for (File file4 : files) {
	System.out.println(file4);
}

使用FilenameFilter接口来过滤需要的文件或文件夹

 //得到一个目录下的所有子目录和文件
 File file3 = new File("F:\\");
 File[] files = file3.listFiles(new FilenameFilter() {
     @Override
     public boolean accept(File dir, String name) {
         //判断如果是steam开头就打印出来.
         if ( name.startsWith("微信")){
             return true;
         }else {
             return false;
         }
     }
 });

 for (File file4 : files) {
     System.out.println(file4);      //F:\微信图片.jpg
 }

删除文件

public boolean delete():立刻删除一个文件

File file = new File("D:\\1\\2\\3");
//删除一个文件
System.out.println(file.delete());

public void deleteOnExit():当程序运行结束删除

重命名和移动

public boolean renameTo(File dest)

File file = new File("D:\\Study.txt");

//将D盘的Study.txt移动到F盘并改名为Play
boolean b = file.renameTo(new File("F:\\Play.txt"));
System.out.println(b);

相对路径

File file = new File("D:\\6.23实训班共享\\代码\\Day16-IO\\1.txt");// 绝对路径
System.out.println(file.exists());
 
System.out.println(System.getProperty("user.dir")); // 当前目录
File file2 = new File("1.txt"); // 相对路径
System.out.println(file2.exists());
System.out.println(file2.getAbsoluteFile());

IO流

Input 输入流: 从文件读取内容,文件对我就是输入流
Output 输出流: 向文件写入内容,文件对我就是输出流

你可能感兴趣的:(JavaSE)