其他分享
首页 > 其他分享> > IO流(File类)

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();		
			
			}	
			
		}		
	}

标签:文件,File,boolean,路径名,IO,目录,String
来源: https://www.cnblogs.com/simashun/p/16100187.html