commons-io


封装了一些常用工具类方法,用于IO的各种操作:

  • Utility class ,提供一些静态方法来满足一些常用的业务场景
  • Input , InputStream 和 Reader 实现
  • Output , OutputStream 和 Writer 实现
  • Filters , 多种文件过滤器实现(定义了 IOFileFilter接口,同时继承了 FileFilter 和 FilenameFilter 接口)
  • comparator包, 文件比较,提供了多种 java.util.Comparator<File> 实现

pom依赖

 <dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.4</version>
</dependency>

常用工具类

  • IOUtils

    提供各种静态方法,用于处理读,写和、拷贝,这些方法基于InputStream、OutputStream、Reader 和 Writer

  InputStream in = new URL( "http://commons.apache.org" ).openStream();
try {
    System.out.println( IOUtils.toString( in ) );
} finally {
    IOUtils.closeQuietly(in);
}
  • FileUtils

    提供各种静态方法,基于File对象工作,包括读、写、拷贝、比较文件

  File file = new File("/commons/io/project.properties");
List lines = FileUtils.readLines(file, "UTF-8");
  • LineIterator

    提供灵活的方式操作基于行的文件。通过FileUtils 或 IOUtils中的静态方法,可以直接创建一个实例

  LineIterator it = FileUtils.lineIterator(file, "UTF-8");
try {
    while (it.hasNext()) {
        String line = it.nextLine();
        /// do something with line
    }
} finally {
    LineIterator.closeQuietly(it);
}

参考资料: