JAVA SE File下面的方法

使用File类创建文件或者文件夹

booleancreateNewFile() 创建一个文件,文件不存在。文件所在的路径得存在
booleanmkdir() 通过file对象创建文件夹。
booleanmkdirs() 通过file对象创建多层级的文件夹
booleanrenameTo(File dest) 对file对象重命名和移动。
import java.io.File;
import java.io.IOException;

public class Demo2 {
	public static void main(String[] args) throws IOException {
		File file = new File("c:/aaa/1.txt");
		System.out.println(file.createNewFile());
		//创建一个文件夹,有的话就不会再创建了,返回false
		File file2 = new File("c:/aaa/ddd");
		System.out.println(file2.mkdir());
		//能不能创建多层级的文件夹  能
		File file3 = new File("c:/aaa/eee/fff/ggg");
		System.out.println(file3.mkdirs());
		File file4 = new File("c:/aaa/bbb/1.txt");
		File file5 = new File("c:/aaa/100.txt");
		//一定和重命名方法,移动完以后,原始文件存在了
		System.out.println(file4.renameTo(file5));
		
	}

}

删除文件或者文件夹

booleandelete() 删除由此抽象路径名表示的文件或目录(文件夹)。
voiddeleteOnExit() 请求在虚拟机终止时删除由此抽象路径名表示的文件或目录。
import java.io.File;
import java.util.Scanner;

public class Demo3 {
	public static void main(String[] args) {
		File file = new File("c:/aaa/100.txt");
		//删除文件,从磁盘上面删除,不会放到回收站
		System.out.println(file.delete());
		//程序退了才删除
		File file1 = new File("c:/aaa/99.wmv");
		file1.deleteOnExit();
		new Scanner(System.in).nextInt();
		//删除文件夹,  只能删除空的文件夹,如果文件夹中有东西删除不了
		File file2 = new File("c:/aaa/ccc");
		System.out.println(file2.delete());
	}

}

File类几个判断方法

booleanisAbsolute() 判断路径是否是绝对路径
booleanisDirectory() 判断是否目录(文件夹)
booleanisFile() 判断是否是文件
booleanisHidden() 判断是否是隐藏文件
booleanexists() 测试此抽象路径名表示的文件或目录是否存在。
import java.io.File;

public class Demo4 {
	public static void main(String[] args) {
		//是文件
		System.out.println(new File("c:/aaa/1.txt").isFile());
		System.out.println(new File("c:/aaa").isFile());//false
		System.out.println(new File("c:/aaa").isDirectory());//true
		System.out.println(new File("c:/aaa/1.txt").isDirectory());//false
		
		System.out.println(new File("c:/aaa/1.txt").isHidden());//false
		System.out.println(new File("c:/aaa/1.txt").isAbsolute());//true
		System.out.println(new File("c:/aaa/8888.txt").exists());//false
	}

}

返回值是String类型的方法

StringgetName() 返回由此抽象路径名表示的文件或目录的名称
StringgetParent() 返回此抽象路径名的父 null的路径名字符串,如果此路径名未命名为父目录,则返回null。
StringgetPath() 将此抽象路径名转换为路径名字符串。
StringgetAbsolutePath() 返回此抽象路径名的绝对路径名字符串
import java.io.File;

public class Demo5 {
	public static void main(String[] args) {
		File file = new File("c:/aaa/1.txt");
		System.out.println(file.getName());
		System.out.println(file.getParent());//c:/aaa
		//c:\aaa\1.txt
		System.out.println(file.getPath());//完整的文件路径
		File file2 = new File("./");
		//通过相对路径获取对应的绝对路径
		System.out.println(file2.getAbsolutePath());
	}

}

返回值是Long类型的一些方法

longlength() 返回由此抽象路径名表示的文件的长度。
longlastModified() 返回此抽象路径名表示的文件上次修改的时间。
import java.io.File;

public class Demo6 {

	public static void main(String[] args) {
		//获取文件的字节数
		File file = new File("c:/aaa/1.txt");
		System.out.println(file.length());
		
		//1641802255357
		//从1970年的1月1日的0时0分0秒到咱们这个文件修改时间
		//2022年1.10 16:10  
		//之间  一个毫秒数
		
		System.out.println(file.lastModified());
		
	}
}

文件列表方法

static File[]listRoots() 列出可用的文件系统根。
String[]list() 返回一个字符串数组,由此抽象路径名表示的文件夹中的文件和目录。

import java.io.File;

public class Demo7 {
	public static void main(String[] args) {
		File file = new File("C:\\Program Files\\Java\\jdk1.8.0_241");
		//获取当前文件夹对象下面的所有的文件和文件夹的名字
		String[] listStrings = file.list();
		for (String string : listStrings) {
			System.out.println(string);
		}
		System.out.println("=========");
		//打印的可用的磁盘的根目录对象
		File[] files = File.listRoots();
		for (File file2 : files) {
			System.out.println(file2);
		}

	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.java.io.File: 该类用来表示一个文件或目录,使用它可以: 1:访问文件或目录的属性(名字,大小,最后修改时间等) 2:操作文件或目录(创建,删除) eg: File file = new File("."+File.separator+"test.txt"); 1)表示当前项目根目录下的文件test.txt,在描述文件或目录时,我们指定的路径最好,使 用相对路径,否则会出现系统差异,不利于跨平台。 2)".":当前目录,在eclipse中运行时,表示当前项目的根目录 3)java.io.File 由于目录的层级分隔符不同系统也有差异: windows:"\",例如:d:\xxx.txt linux:"/" 所以应当使用File的常量表示:File.separator 获取属性信息的相关方法: 1)获取文件名:String getName() 2)获取文件大小:long length() 3)查看文件是否真实存在:boolean exists() 4)查看是否表示的是文件:boolean isFile() 5)查看是否表示的是目录:boolean isDirectory() 6)以下三个方法判断文件或目录是否:可写,可读,可运行 file.canWrite(); file.canRead(); file.canExecute(); 是否为隐藏文件:file.isHidden(); 2.使用File创建一个新文件 ---->在当前项目根目录下创建一个名为demo.txt的文件 若是在当前目录下,"./"是可以忽略不写的 File file = new File("demo.txt"); //若该文件不存在则创建 if(!file.exists()){ //创建新文件 file.createNewFile(); System.out.println("创建完毕!"); } 方法: 1)使用File删除一个文件:file.delete(); 2)使用File创建一个目录:file.mkdir(); 3)创建多级目录:file.mkdirs(); --mkdirs()在创建当前目录的同时,将所有不存在的父目录一同创建 4)删除目录:file.delete(); 若是删除目录,前提是该目录必须是一个空目录(目录中没有任何内容),否则删 除不掉 3.File操作: 1)若File表示的是一个目录,我们可以获取该目录下的所有子项,子项无非还是文件或目录。 /* * 获取当前项目根目录下的所有子项 */ File dir = new File("."); if(dir.isDirectory()){//判断文件表示的是否是目录 /* *方法: * File[] listFiles() * 该方法会获取当前目录下的所有子项,每一个子项无非还是文件或目录,所 以,可以用若干File对象表示每一个子项,最终将他们存入一个数组返回。 */ File[] subs = dir.listFiles(); for(File sub : subs){ if(sub.isFile()){ System.out.println("文件:"+sub.getName()); }else{ System.out.println("目录:"+sub.getName()); } } } 2)FileFilter:文件过滤器 使用文件过滤器来获取一个目录下满足条件的部分子项。是一个接口,本身不能实例化,我们需要定义一个类实现该接口,并重写其定义的accept方法来定义过滤规则。 accept方法用于定义过滤要求,当给定的file对象满足要求就返回true即可。 重载的listFiles方法: 要求我们传入一个文件过滤器,然后该方法会将当前目录下的所有子项顺序的传递给过滤器的accept方法,只将返回为true的子项保留,最终存入一个数组并返回。eg:File[] subs = dir.listFiles(filter);---->filter为过滤器 3)删除多级目录: 由于一个目录中可能含有子项。所以要删除当前这个目录必须先将其所有子项删除才 可以。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值