FileUtils常用方法 - commons-io常用工具类

Apache Commons IO的FileUtils提供了大量便捷的文件操作方法,如获取、复制、删除、移动文件和目录,读写文件内容,检查文件属性等。本文详细介绍了FileUtils的常用方法,包括获取文件、目录、临时目录路径,读取和写入文件,文件大小计算,目录操作,文件过滤,文件流操作,以及文件的比较和删除等。这些方法极大地简化了Java中文件操作的复杂性。

FileUtils常用方法


FileUtils.getFile => 获取指定文件

File file = FileUtils.getFile("D://test/test1/123.txt");
FileUtils.getFile => 获取指定目录下的:"lalala.txt", "lalala2.txt"

File file1 = FileUtils.getFile(new File("D://test/test1"), "123.txt", "456.txt");
FileUtils.getTempDirectoryPath => 获取临时目录 File对象

File tempDirectory = FileUtils.getTempDirectory();
FileUtils.getTempDirectoryPath => 获取临时目录路径字符串

System.out.println(FileUtils.getTempDirectoryPath());
// C:\Users\han\AppData\Local\Temp\
FileUtils.getUserDirectory  => 获取用户主目录 File对象

File userDirectory = FileUtils.getUserDirectory();
FileUtils.getUserDirectoryPath  => 获取用户主目录路径字符串

System.out.println(FileUtils.getUserDirectoryPath());
// C:\Users\Administrator
FileUtils.byteCountToDisplaySize  => 以可读的方式,返回文件的大小EB, PB, TB, GB, MB, KB or bytes

System.out.println(FileUtils.byteCountToDisplaySize(10000000)); // 9 MB
System.out.println(FileUtils.byteCountToDisplaySize(1)); // 1 bytes
FileUtils.sizeOf => 读取文件大小

FileUtils.sizeOf(new File("D://test/test1"));//返回Long
FileUtils.sizeOfAsBigInteger(new File("D://test/test1"));//返回BigInteger
FileUtils.sizeOfDirectory => 目录,级联计算文件下的所有文件大小

FileUtils.sizeOfDirectory(new File("D://test/test1"));//返回Long
FileUtils.sizeOfDirectoryAsBigInteger(new File("D://test/test1"));//返回BigInteger
FileUtils.copyDirectory => 复制文件夹(文件夹里面的文件内容也会复制)

复制代码
String filePath1 = "D://test/test1" ;
File srcDir = new File( filePath1 ) ;
 
String filePath2 = "D://test/test2" ;
File destDir = new File( filePath2 ) ;
 
try {
   
   
    //复制文件夹
    FileUtils.copyDirectory(srcDir, destDir);
} catch (IOException e) {
   
   
    e.printStackTrace();
}
复制代码
FileUtils.copyDirectoryToDirectory => 此方法将目录1所有的文件夹及文件复制到目录2下,如果有同名文件夹则合并,如果有同名文件则替换

复制代码
try {
   
   
    //复制文件夹
    FileUtils.copyDirectoryToDirectory(srcDir, destDir);
} catch (IOException e) {
   
   
    e.printStackTrace();
}
复制代码
FileUtils.copyDirectory => 复制文件夹,带有文件过滤功能

复制代码
try {
   
   
    ///仅仅拷贝目录
    FileUtils.copyDirectory(srcDir, destDir, DirectoryFileFilter.DIRECTORY);
} catch (IOException e) {
   
   
    e
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值