千寻

道路很长, 开始了就别停下!

0%

commons-io

简介

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

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

pom依赖

1
2
3
4
5
 <dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>

常用工具类

  • IOUtils

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

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

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

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

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

1
2
3
4
5
6
7
8
9
LineIterator it = FileUtils.lineIterator(file, "UTF-8");
try {
while (it.hasNext()) {
String line = it.nextLine();
/// do something with line
}
} finally {
LineIterator.closeQuietly(it);
}

参考资料:

http://ifeve.com/commons-io/