IO流(File类)
2022/4/4 23:22:38
本文主要是介绍IO流(File类),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
IO流(File类)
一,前言
开始学习IO流,了解IO流的概念,掌握File类。。
二, IO流的概念
Java 的 IO 流主要包括输入、输出两种 IO 流。
- 输入:读取数据到内存中。
- 输出:将内存数据输出外部中。
每种输入、输出流有可分为字节流和字符流两大类:
- 字节流以字节为单位来处理输入、输出操作。
- 字符流以字符为单位来处理输入、输出操作。
三,File类的概念
Java文件类以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。
File 能新建、删除、重命名文件和目录,但 File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。
四,File类的构造方法
//通过将给定路径名字符串转换成抽象路径名来创建一个新 File 实例。 File(String pathname) //根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。 File(String parent, String child) //通过将给定的 file: URI 转换成一个抽象路径名来创建一个新的 File 实例。 File(URI uri)
五,File类的常用方法
//创建方法 boolean createNewFile(): 创建文件(当文件不存在时) boolean mkdir(): 创建一级目录 boolean mkdirs(): 创建多级目录 //删除方法 boolean delete(): 删除文件或目录。 //测试方法 boolean exists(): 测试文件或目录是否存在。 boolean isDirectory(): 测试文件是否为目录。 boolean isFile(): 测试文件是否为普通文件。 //查询方法 String getAbsolutePath(): 返回绝对路径名字符串。 String getParent(): 返回上级绝对路径。 //转换方法 String[] list(): 返回一个字符串数组,命名由此抽象路径名表示的目录中的文件和目录。 File[] listFiles(): 返回一个抽象路径名数组,表示由该抽象路径名表示的目录中的文件。 //其他方法 String getName(): 返回由此抽象路径名表示的文件或目录的名称。 long length(): 返回由此抽象路径名表示的文件的长度。
六,递归方法
使用递归方法制一个多级文件夹到一个指定的目录下:
public class Test02 { /* * 复制一个多级文件夹到一个指定的目录下 */ public static void fz(String pathname,String path) throws IOException { //定位文件 File file = new File(pathname); //如果不存在 if (file.exists() == false) { throw new IOException("源文件不存在"); } //展示当下文件夹各文件名 String str[] = file.list(); //循环输出 for (String string : str) { //定位当下新文件 File f = new File(pathname+"/"+string); //如果是文件夹 if (f.isDirectory()) { //创建复制处文件夹 File newf = new File(path + "/" + string); newf.mkdir(); //递归文件夹下的文件,重复操作 fz(pathname+"/"+string, path + "/" + string); //如果是文件 }else { //创建复制处文件 File newf = new File(path + "/" + string); newf.createNewFile(); } } }
这篇关于IO流(File类)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程
- 2024-11-26Springboot单体架构搭建资料:新手入门教程
- 2024-11-26Springboot单体架构搭建资料详解与实战教程
- 2024-11-26Springboot框架资料:新手入门教程
- 2024-11-26Springboot企业级开发资料入门教程
- 2024-11-26SpringBoot企业级开发资料详解与实战教程
- 2024-11-26Springboot微服务资料:新手入门全攻略