File文件

File文件

file:文件
directory:文件夹/目录
path:路径

static String pathSeparator 与系统有关的路径分隔符,为了方便,可被表示为一个字符串
static char pathSeparatorChar 与系统有关的路径分隔符

static String separator 与系统有关的默认名称分隔符,为了方便,可被表示为一个字符串
static char separatorChar 与系统有关的默认名称分隔符

String pathSeparator = File.pathSeparator;
System.out.println(pathSeparator);//路径分隔符 Windows:分号; 	Linux:冒号:

String separator = File.separator;
System.out.println(separator);//文件名称分割符windows:反斜线\  linux:正斜杠/

File构造方法

1.File(String pathname):通过将给定路径名转换为抽象路径名来创建一个新的File实例
	参数:
		String pathname:字符串的路径名称
		路径可以是以文件结尾,也可以是以文件夹结尾
		可以是相对路径,也可以是绝对路径
		路径可以是存在的,也可以是不存在的
		创建File对象,只是把字符串路径封装为File对象,不考虑路径的真假情况
2.File(String parent ,String child):根据paren路径名字符串和child创建一个新的File实例
	参数:把路径分成两部分
		String parent:父路径
		String child :子路径
3.File(File parent,String child):根据paren路径名字符串和child创建一个新的File实例
	参数:把路径分成两部分
		String parent:父路径
		String child :子路径

获取功能方法

	1.public String getAbsolutePath():
		返回此File的绝对路径字符串
	2.public String getPath():
		将此File转换为路径名字字符串,获取的就是构造方法传递路径的结尾部分(文件/文件夹)
	3.public String getName():
		返回由此File表示的文件或目录的名字
	4.public long length():
		返回由此File表示的文件的长度,
		注意:
			获取的是构造方法指定的文件的大小,以字节为单位
			文件夹是没有大小的概念的,不能获取文件夹的大小,返回值为0
			如果构造方法中给出的路径不存在,那么length方法返回0
	5.long lastModified():
		获取文件的最后修改时间

重命名方法:

	renameTo(File dest)
		调用者是当前的文件或者文件夹的路径对象
		参数是变化之后的文件或者文件夹的路径对象
	注意:
		如果在统一文件夹下,修改路径,就是重命名
		如果在不同文件夹下,修改路径,就是剪切

File类判断功能

	public boolean exists():此File表示的文件或目录是否实际存在
	public boolean isDirectory():此File表示的是否为目录
	public boolean isFile():此File表示的是否为文件

创建册除功能的方法

	1.public boolean createNewFiLe():
		当且仅当具有该名称的文件尚不存在时,创建一个新的空文件
		文件的路径和名称在构造方法中给出(构造方法的参数)
		返回值:布尔值
			true:文件不存在,创建文件,返回true
			false:文件存在,不会创建,返回false		
		注意
			1.此方法只能创建文件,不能创建文件夹
			2创建文件的路径必须存在,否则会抛出异常
	2.public boolean delete():
		册除由此FiLe表示的文件或目录
		此方法,可以删除构造方法中给出的文件或文件夹
		返回值:
			true:文件/文件夹删除成功,返回true
			false:文件夹中有内容,不会删除返回false;构造方法中路径不存在false			
		注意:
			delete()方法是直接在硬盘删除文件/文件夹,不走回收站
	3.public booLean mkdir():
		创建由此File表示的目录。创建单级目录
	4.public boolean mkdirs():
		创建由此File表示的目录,包括任何必需但不存在的父目录,多级目录
		文件的路径和名称在构造方法中给出(构造方法的参数)
		返回值:布尔值
			true:文件夹不存在,创建文件夹,返回true
			false:文件存在,不会创建,返回false;构造方法中给出的路径不存在返回false
			
		注意:
			1.此方法只能创建文件夹,不能创建文件

File类遍历目录功能

	-public String[] list():返回一个String数组,表示File目录中的所有子文件或目录
	-public File[] listFiles():返回一个File数组,表示该File目录中的所有子文件或目录
	注意: 
		list方法和listFile方法遍历的是构造方法中给出的目录
		如果构造方法中给出的目录的路径不存在,会抛出空指针异常
		如果构造方法中给出的路径不是一个目录,也会抛出异常

		private static void getAllFile(File dir) {
			//	System.out.println(dir);
				File[] files = dir.listFiles();
				for (File f : files) {
					if (f.isDirectory()) {
						getAllFile(f);
					}else {
						if (f.getName().endsWith(".txt")) {
							System.out.println(f);
						}
					}
				}
			}

过滤器

在FiLe类中有两个和ListFile重裁的方法,方法的参数传递的就是过滤器
	FiLe[] ListFiles(FileFilter filter)
	java.io.FileFilter接口:用于抽象路径名(File对象)的过滤器
		作用:用来过滤文件(File对象)
		抽象方法:用来过滤文件的方法
		boolean accept(File pathname):测试指定抽象路径名是否应该包含在某个路径名列表中。
		参数:
			File pathname:使用 Listfiles方法遍历目录,得到的每一个文件对象
	Filel[] listFiles(FilenameFilter filter)
	java.io.FilenameFilter接口:实现此接口的类实例可用于过滤器文件名
		作用:用于过滤文件名称
		抽象方法:用来过滤文件的方法
			boolean accpet(File dir , String name):测试指定文件是否包含在某一文件列表中
			参数:
				File dir:构造方法中传递的被遍历的目录
				String name:使用ListFiles方法遍历目录,获取每一个文件/文件夹的名称
	注意:
		两个过滤接口没有实现类,需要自己写实现类,重写过滤的方法accept,在方法中自己定义规则
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值