Java中File类的概述和方法

1.0 File类的概述和构造方法

学习IO的目的是处理电脑磁盘上的各种文件(文本,音频,视频),所有的程序运行都是加载到内存中进行的。而JavaIO类可以完成内存和磁盘的数据交换功能,即通过IO类把磁盘上的文件加载到内存当中进行程序的处理。

* A:File类的概述

* File更应该叫做一个路径

* 文件路径或者文件夹路径  

* 路径分为绝对路径和相对路径

* 绝对路径是一个固定的路径,从盘符开始C:UsersAdministratorDesktop你好

* 相对路径相对于某个位置,在eclipse下是指当前项目下,在dos下指的当前路径,光标前的路径。指的是当前路径

* 查看API i in o out输入和输出

* 文件和目录路径名的抽象表示形式

* B:构造方法

* File(String pathname):根据一个路径得到File对象

 

* File(String parent, String child):根据一个目录和一个子文件/目录得到File对象

 

* File(File parent, String child):根据一个父File对象和一个子文件/目录得到File对象 封装成File对象这样更好的取使用file类里面的方法

Exits()是否存在

 

1.1 File类的创建功能

 

* A:创建功能创建好以后点着项目F5刷新下。或者点着项目右击选点Refresh--F5

 

* public boolean createNewFile():创建文件 如果存在这样的文件,就不创建了

 

* public boolean mkdir():创建文件夹 如果存在这样的文件夹,就不创建了

 

* public boolean mkdirs():创建文件夹,如果父文件夹不存在,会帮你创建出来

1.2 File类的重命名和删除功能

* A:重命名和删除功能

* public boolean renameTo(File dest):把文件重命名为指定的文件路径

* public boolean delete():删除文件或者文件夹

* B:重命名注意事项

* 如果路径名相同,就是改名。

* 如果路径名不同,就是改名并剪切。

* C:删除注意事项:

* Java中的删除不走回收站。

* 要删除一个文件夹,请注意该文件夹内不能包含文件或者文件夹

1.3 File类的判断功能

* A:判断功能

* public boolean isDirectory():判断是否是目录

* public boolean isFile():判断是否是文件

* public boolean exists():判断是否存在

* public boolean canRead():判断是否可读

* public boolean canWrite():判断是否可写

* public boolean isHidden():判断是否隐藏

1.4 File类的获取功能

* A:获取功能

* public String getAbsolutePath():获取绝对路径 绝对

* public String getPath():获取路径

* public String getName():获取名称

* public long length():获取长度。字节数

* public long lastModified():获取最后一次的修改时间,毫秒值

* public String[] list():获取指定目录下的所有文件或者文件夹的名称数组

* public File[] listFiles():获取指定目录下的所有文件或者文件夹的File数组 

1.5 文件名称过滤器的概述及使用

* A:文件名称过滤器的概述

* public String[] list(FilenameFilter filter)

* public File[] listFiles(FileFilter filter)

* B:文件名称过滤器的使用

* 需求:判断F盘目录下是否有后缀名为.jpg的文件,如果有,就输出该文件名称

1.6 File类常用方法总结

 

1.7 练习

目的:将指定文件夹下的所有文件名输出

package com.se.IO;

import java.io.File;

public class FileTest3 {
    public static void main(String[] args) {
        File file = new File("f:/BaiduNetdiskDownload");
        File[] files = file.listFiles(); // 获取此文件夹下的所有文件及文件夹名称
        for (File f :
                files) {
            if (f.isFile()) { // 判断如果是文件,就输出文件名
                System.out.println(f.getName());
            } else { // 否则继续遍历
                File[] listFiles = f.listFiles();
                for (File f2 :
                        listFiles) {
                    if (f2.isFile()) {
                        System.out.println(f2.getName());
                    }
                }
            }
        }
    }
}

 

原文地址:https://www.cnblogs.com/LEPENGYANG/p/15032496.html