📜  Apache Commons IO-概述

📅  最后修改于: 2020-11-18 08:13:59             🧑  作者: Mango


Apache Commons IO库为文件IO的常见操作提供了各种实用程序类,涵盖了广泛的用例。它有助于避免编写样板代码。 Apache Commons IO库提供以下类别的类-

  • 实用程序类-org.apache.commons.io包下的这些类提供文件和字符串比较。以下是一些示例。

    • IOUtils-提供用于读取,写入和复制文件的实用方法。该方法适用于InputStream,OutputStream,Reader和Writer。

    • FilenameUtils-提供无需文件对象即可使用文件名的方法。它以类似的方式在不同的操作系统上工作。

    • FileUtils-提供操作文件的方法,如移动,打开,检查是否存在,读取文件等。这些方法使用File Object。

    • IOCase-提供用于字符串操作和比较的方法。

    • FileSystemUtils-提供获取磁盘驱动器上可用空间的方法。

    • LineIterator-提供一种灵活的方式来处理基于行的文件。

  • 过滤器类-org.apache.commons.io.filefilter软件包下的过滤器类提供了根据逻辑标准而不是基于字符串的繁琐比较来过滤文件的方法。以下是一些示例。

    • NameFileFilter-过滤名称的文件名。

    • WildcardFileFilter-使用提供的通配符过滤文件。

    • SuffixFileFilter-根据后缀过滤文件。这用于检索特定类型的所有文件。

    • PrefixFileFilter-根据前缀过滤文件。

    • OrFileFilter-在文件过滤器列表中提供条件或逻辑。如果列表中的任何过滤器返回true,则返回true。否则,它返回false。

    • AndFileFilter-在文件过滤器列表中提供条件和逻辑。如果列表中的任何过滤器返回false,则返回false。否则,它返回true。

  • 文件监视器类-org.apache.commons.io.monitor包下的文件监视器类提供控制以跟踪特定文件或文件夹中的更改,并允许对更改进行相应的操作。以下是一些示例。

    • FileEntry-在某个时间点提供文件或目录的状态,文件属性。

    • FileAlterationObserver-表示根目录下文件的状态,检查文件系统并通知侦听器创建,更改或删除事件。

    • FileAlterationMonitor-代表一个线程,该线程以指定的时间间隔生成一个监视线程,该监视线程触发任何已注册的FileAlterationObserver。

  • 比较器类-org.apache.commons.io.comparator包下的文件监控器类允许轻松地对文件和目录进行比较和排序。

    • NameFileComparator-比较两个文件的名称。

    • SizeFileComparator-比较两个文件的大小。

    • LastModifiedFileComparator-比较两个文件的最后修改日期。

  • Stream类-有下org.apache.commons.io.input包和OutputStream的多种实现InputStream的org.apache.commons.io.output包下做流有用的任务。以下是一些示例。

    • NullOutputStream-吸收所有发送的任何错误数据。

    • TeeOutputStream-将输出发送到两个流。

    • ByteArrayOutputStream -JDK类的更快版本。

    • CountingOutputStream-计算通过流的字节数。

    • CountingOutputStream-计算通过流的字节数。

    • ProxyOutputStream-将调用更改为代理流。

    • LockableFileWriter-一个FileWriter,用于创建锁定文件并允许简单的跨线程文件锁定处理。