Java高级应用文件操作

文件管理

文件管理的概述:

  1. Java中的对文件的管理,通过java.io包中的File类实现
  2. Java中文件的管理,主要是针对文件或是目录路径名的管理

File类的四种构造方法

测试的demo中需要导入包import java.io.File;

1.通过将给定路径名字符串转换成抽象路径名来创建一个新 File 实例

File 变量名 = new File(String pathname) ;

File f = new File("D:/powerBI/file.txt");

通过将给定File的uri转换成抽象路径名来创建一个新 File 实例

在工程文件夹下创建文件
File 变量名 = new File(URI uri) ;

File f2 = new File("file/file.txt"); //在根目录下file文件夹创建file.txt文件

根据 parent 路径名字符串和 child 路径名字符串创建一个 新 File 实例

File 变量名 = new File(String parent,Stirng child) ;

File f3 = new File("D:/powerBI","file.txt");  //在D:/powerBI目录下创建file.txt文件

根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例

File 变量名 = new File(File parent,Stirng child) ;

File f4 = new File(new File("file"),"file.txt");

File类的方法

boolean createNewFile()

当且仅当不存在具有此抽象路径名指定的名 称的文件时,原子地创建由此抽象路径名指 定的一个新的空文件。

//判断文件不存在则创建给目录以及文件
File f = new File("D:/powerBI/file.txt");
if(f.exists()) {
			System.out.println("文件已经存在");
		}else {
			try {
				boolean result = f.createNewFile();//创建成功返回true,不成功返回false(该文件已经存在)
			} catch (IOException e) {
				// TODO: handle exception
				e.printStackTrace();
			}
		}

static File createTempFile(String prefix,String suffix)

在默认临时文件目录中创建一个空文件,使 用给定前缀和后缀生成其名称

//此方法需要配合try cath语句一起使用
try {
			File tempFile = File.createTempFile("临时文件", ".xlsx");
			System.out.println("临时文件tempFile的绝对文件路径"+tempFile.getAbsolutePath());			
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

static File createTempFile(String prefix,Stirng suffix,File directory)

在指定目录中创建一个新的空文件,使用给 定的前缀和后缀字符串生成其名称

try {
	//此方法需要配合try cath语句一起使用
			File tempFile2 = File.createTempFile("指定路径", ".doc",new File("file")); //工程file文件夹
			System.out.println("临时文件tempFile的绝对文件路径"+tempFile2.getAbsolutePath());
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

boolean exists( )

测试此抽象路径名表示的文件或目录是否存在

File f = new File("D:/powerBI/file.txt");
f.exists(); //存在放回true,不存在放回false

boolean delete( )

删除此抽象路径名表示的文件或目录

try {
		//此方法需要配合try cath语句一起使用
			System.out.println("文件是否删除"+tempFile.delete());
			System.out.println("文件是否删除"+tempFile2.delete());
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

boolean equals(Object obj)

测试此抽象路径名与给定对象是否相等

boolean canRead()

测试应用程序是否可以读取此抽象路径名表示的文件

File f = new File("D:/powerBI/file.txt");
System.out.println("文件可读"+f.canRead());  //可读返回true,不可读放回false

boolean canWrite()

测试应用程序是否可以修改此抽象路径名表示的文件

File f = new File("D:/powerBI/file.txt");
System.out.println("文件是否可写"+f.canWrite());  //文件可写放回true,不可写放回false

String[] list( )

返回由此抽象路径名所表示的目录中的文件和 目录的名称所组成字符串数组

String getAbsolutePath( )

返回抽象路径名的绝对路径(D:/powerBI/file.txt)名字符串

File f = new File("D:/powerBI/file.txt");
System.out.println("文件绝对路径"+f.getAbsolutePath());

String getName( )

返回由此抽象路径名表示的文件或目录的名 称,不包括路径名称

File f = new File("D:/powerBI/file.txt");
System.out.println("文件名称"+f.getName());  //file.txt

String getPath( )

将此抽象路径名转换为一个路径名字符串

File f = new File("D:/powerBI/file.txt");
System.out.println("文件相对路径"+f.getPath());  //D:/powerBI/file.txt

File[] listFiles()

返回一个抽象路径名数组,这些路径名表示 此抽象路径名所表示目录中的文件

boolean renameTo(File dest )

重新命名此抽象路径名表示的文件

long length( )

返回由此抽象路径名表示的文件的大小,以 byte为单位

File f = new File("D:/powerBI/file.txt");
System.out.println("文件内容长度"+f.length());

boolean mkdir( )

创建此抽象路径名指定的目录

File f3 = new File("D:/powerBI/a2");
boolean mkrs = f3.mkdir();
System.out.println("创建文件夹是否成功"+mkrs); //创建成功返回true,不成功返回false(该文件已经存在)

boolean mkdirs( )

创建此抽象路径名指定的目录,包括创建必 需但不存在的父目录。注意,如果此操作失 败,可能已成功创建了一些必需的父目录

File f4 = new File("D:/powerBI/aa2/b/c");
boolean mkr = f4.mkdirs();
System.out.println("创建文件夹是否成功"+mkr);//创建成功返回true,不成功返回false(该文件已经存在)

File f = new File("D:/powerBI/file.txt");
System.out.println("文件最后一次修改时间"+new Date(f.lastModified()).toLocaleString());
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

code_mo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值