文章目录
- 🐒个人主页
- 🏅JavaSE系列专栏
- 📖前言:
- 🎀File类的设计
- 🪅数据流的流向
 
- 🏅对数据操作的类
- 🧸按单位划分
- 🧸按封装类型划分
 
- 🎀整理File常用方法
 
🐒个人主页
🏅JavaSE系列专栏
📖前言:
本篇博客主要File类以及数据流的划分
🎀File类的设计
【是java专门对文件、文件夹操作的类】
 在 Java 中,File 类是 java.io 包中唯一代表磁盘文件本身的对象。File 类定义了一些与平台无关的方法来操作文件,File类主要用来获取或处理与磁盘文件相关的信息,像文件名、 文件路径、访问权限和修改日期等,还可以浏览子目录层次结构。
 File 类表示处理文件和文件系统的相关信息。也就是说,File 类不具有从文件读取信息和向文件写入信息的功能,它仅描述文件本身的属性。
🪅数据流的流向

🏅对数据操作的类
🧸按单位划分
字节流:每次读取数据时,是以字节为单位传输数据(可以对任何文件操作)
 inputStream outputStream基类
 字符流:每次读取数据时,是以字符为单位传输数据(只适合纯文本文件)
 (Reader 、Writer为字符流基类,通过继承inputstream类,实现一次读取一个字符)
🧸按封装类型划分
节点流:直接对数据进行处理(inputStream 、 outputStream)
 处理流:对节点流进行再封装、深加工,可以更加方便的处理数据
 (BufferedInputStream 、 BufferedOutputStream 默认缓冲数组大小8KB)
 【先把数据存入缓冲数组中,当存满了或自带缓冲数组大于8KB时,会直接调用flushBuffered(),将数组存入并清空缓冲数组】
🎀整理File常用方法
| 构造方法 | 方法内容介绍 | 
|---|---|
| File(File parent, String child) | 📖【(文件夹对象,“相对路径路径”)】 从父抽象路径名和子路径名字符串创建新的 File实例。 | 
| File(String pathname) | 📖 通过将给定的路径名字符串来创建新的 File实例。 | 
| File(String parent, String child) | 📖 从父路径名字符串和子路径名字符串创建新的 File实例。 | 
| 常用方法 | 方法内容介绍 | 
| boolean  canRead() | 📖【是否可读】 | 
| boolean canWrite() | 📖【是否可写】 | 
| boolean createNewFile() | 📖【创建新文件】 | 
| static File createTempFile(String prefix, String suffix) | 📖【创建临时文件】文件名称:前缀prefix+后缀suffix | 
| static File createTempFile(String prefix, String suffix, File directory) | 📖【指定目录创建临时文件】在指定的目录中创建一个新的临时文件,使用给定的前缀和后缀字符串生成其名称。 | 
| boolean  delete() | 📖【删除文件】、【删除空目录(🎇非空删不掉)】 | 
| boolean exists() | 📖【判断文件或目录是否存在】 | 
| File getAbsoluteFile() | 📖【获取文件的绝对路径】 | 
| String getName() | 📖【获取文件名或目录名】 | 
| String getParent() | 📖【获取上一级目录名】 | 
| File getParentFile() | 📖【获取上一级的路径】 | 
| String getPath() | 📖【获取路径】 | 
| int hashCode() | 📖【计算此抽象路径名的哈希码】 | 
| boolean isAbsolute() | 📖测试这个抽象路径名是否是绝对的 | 
| boolean isDirectory() | 📖【是否为目录】 | 
| boolean isFile() | 📖【是否为文件】 | 
| boolean isHidden() | 📖【是否为隐藏文件】 | 
| long``lastModified() | 📖【返回文件上次修改的最新时间】 | 
| long``length() | 📖【表示文件长度】 | 
| String[] list() | 📖【返回一个目录列表–里面是其子文件、子目录名字符串】⚠不是对象,不能操作。只有该目录内容字符串名字 | 
| String[]``list(FilenameFilter filter) | 📖【加了一个名字过滤器,其余与上面相同】 | 
| File[]  listFiles() | 📖【该目录下内容封装成对象放入数组中】,可以对其进行操作,等价于对文件、目录操作 | 
| File[]``listFiles(FileFilter filter) | 📖【加了一个名字过滤器,其余与上面相同】 | 
| boolean mkdir() | 📖【创建文件夹(目录)】 | 
| boolean mkdirs() | 📖【创建多级文件夹(目录)】 | 
| boolean renameTo(File dest) | 📖【对文件或目录重命名】 | 
| boolean setReadOnly() | 📖【设置文件只读】 | 
| boolean setReadable(boolean readable) | 📖【设置文件只读权限】 | 
| boolean setReadable(boolean readable, boolean ownerOnly) | 📖【设置文件只读权限(其他人,本人)】 | 
| boolean setWritable(boolean writable) | 📖【设置文件写入权限】 | 
| boolean setWritable(boolean writable, boolean ownerOnly) | 📖【设置文件写入权限(其他人,本人)】 | 



















