Java中的IO流(三)Apache Commons IO组件的常用操作

本文介绍了Apache Commons IO组件中的FileUtils和IOUtils类的常用操作,包括文件和目录的清理、拷贝、内容读写、流的处理等,并通过实例展示了如何使用这些方法进行文件操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

这次带来的是Apache开源组织的CommonsIO集成组件的FileUtils和IOUtils常用操作。

下载

首先应该去Apache CommonsIO下载网址将组件的压缩包下载到本地。
在这里插入图片描述
下载完后解压打开文件夹,这两个圈着的jar包便是需要导入到java的JVM里面的
在这里插入图片描述

导包

  1. 如何往eclipse导入jar包,可以看看百度经验的eclipse导jar包操作
  2. 往idea导包操作如下
    1)打开项目(或者创建项目以后,点击菜单File->Project Structure)
    在这里插入图片描述
    2) 选择Modules点击要添加的项目名,在选择Dependencies,在这里插入图片描述
    3)点击添加,添加JAR,然后选择已经本地路径中下载好的jar包。
    在这里插入图片描述

具体使用

打开CommonsIO的API文档,一些常用的方法如下

cleanDirectory:清空目录,但不删除目录。

contentEquals:比较两个文件的内容是否相同。

copyDirectory:将一个目录内容拷贝到另一个目录。可以通过FileFilter过滤需要拷贝的 文件。

copyFile:将一个文件拷贝到一个新的地址。

copyFileToDirectory:将一个文件拷贝到某个目录下。

copyInputStreamToFile:将一个输入流中的内容拷贝到某个文件。

deleteDirectory:删除目录。

deleteQuietly:删除文件。

listFiles:列出指定目录下的所有文件。

openInputSteam:打开指定文件的输入流。

readFileToString:将文件内容作为字符串返回。

readLines:将文件内容按行返回到一个字符串数组中。

size:返回文件或目录的大小。

write:将字符串内容直接写到文件中。

writeByteArrayToFile:将字节数组内容写到文件中。

writeLines:将容器中的元素的toString方法返回的内容依次写入文件中。

writeStringToFile:将字符串内容写到文件中。

FileUtils类

Ⅰ统计文件和文件夹的部分操作
 public static void main(String[] args) throws IOException {
   

       long len1 =  FileUtils.sizeOf(new File("E:/py/小说/第一章.txt"));//获取文件大小
       long len2 = FileUtils.sizeOf(new File("E:/py"));//获取整个文件夹目录的大小
       //过滤,空文件不记录,递归进行遍历
       Collection<File> files= FileUtils.listFiles(new File("E:/py/小说"), EmptyFileFilter.NOT_EMPTY, DirectoryFileFilter.INSTANCE);
        for (File file:files) {
   //遍历文件夹
            System.out.println(file.getAbsolutePath());
        }
		
		//只取文件后缀名为class和txt的文件,DirectoryFileFilter.INSTANCE,方法将使用递归的形式来进行文件过滤扫描。
        Collection<File> files1= FileUtils.listFiles(new File("E:/py/小说"),
                FileFilterUtils.or(new SuffixFileFilter("txt"),new SuffixFileFilter("class")), DirectoryFileFilter.INSTANCE);

    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值