目录

FileUtils 通用文件操作工具类

IOUtils 通用 IO 流操作工具类

Apache FilenameUtils 常规文件名和路径操作实用程序

序言

1、Apache 为大家提供了很多有用的 API,如 StringUtils、FileUtis 就是其中常用的之一

2、FileUtils 主要用于操作文件, API 所在包为:org.apache.commons.io,官网API文档:Apache Commons IO 2.11.0 API

3、所需开发包可从官网下载:Commons IO – Commons IO Overview

4、直接点击 commons-io-2.6-bin.zip 即可下载。

commons-io-2.6-bin.tar.gzmd5pgpcommons-io-2.6-bin.zipmd5pgp

5、Maven 仓库获取地址:http://mvnrepository.com/artifact/commons-io/commons-io

commons-io

commons-io

2.6

FileUtils 通用文件操作工具类

FileUtils 常用常量:

public static final long ONE_KB = 1024; public static final BigInteger ONE_KB_BI = BigInteger.valueOf(ONE_KB); public static final long ONE_MB = ONE_KB * ONE_KB; public static final BigInteger ONE_MB_BI = ONE_KB_BI.multiply(ONE_KB_BI); private static final long FILE_COPY_BUFFER_SIZE = ONE_MB * 30; public static final long ONE_GB = ONE_KB * ONE_MB; public static final BigInteger ONE_GB_BI = ONE_KB_BI.multiply(ONE_MB_BI); public static final long ONE_TB = ONE_KB * ONE_GB; public static final BigInteger ONE_TB_BI = ONE_KB_BI.multiply(ONE_GB_BI); public static final long ONE_PB = ONE_KB * ONE_TB; public static final BigInteger ONE_PB_BI = ONE_KB_BI.multiply(ONE_TB_BI); public static final long ONE_EB = ONE_KB * ONE_PB; public static final BigInteger ONE_EB_BI = ONE_KB_BI.multiply(ONE_PB_BI); public static final BigInteger ONE_ZB = BigInteger.valueOf(ONE_KB).multiply(BigInteger.valueOf(ONE_EB)); public static final BigInteger ONE_YB = ONE_KB_BI.multiply(ONE_ZB); public static final File[] EMPTY_FILE_ARRAY = new File[0];

FileUtils 常用方法:FileUtils API.md。

在线演示源码:https://gitee.com/wangmx1993/apache-study/blob/master/src/test/java/com/wmx/FileUtilsTest.java 更多 API 方法参考官网文档:Apache Commons IO 2.11.0 API

IOUtils 通用 IO 流操作工具类

1、org.apache.commons.io.IOUtils 与 org.apache.commons.io.FileUtils 位于同一个包下,FileUtils 底层也是使用 IOUtils

2、IOUtils 工具类提供方法与 FileUtils 基本类似,只是更面向底层的 OutputStream、InputStream、FileInputStream、FileOutputStream、BufferedOutputStream 等等 IO 流。

3、下面只是简单抽取几个方法,更多 API 方法参考官网文档:Apache Commons IO 2.11.0 API

closeQuietly() toString() copy() toByteArray() write() toInputStream() readLines() copyLarge() lineIterator() readFully()

Apache FilenameUtils 常规文件名和路径操作实用程序

/**

* String getName(final String filename)

* 从完整文件名中获取名称减去路径。

* 此方法将处理Unix或Windows格式的文件。

* 返回最后一个正斜杠或反斜杠之后的文本。

*

* a/b/c.txt -> c.txt

* a.txt -> a.txt

* a/b/c -> c

* a/b/c/ -> ""

*

*/

@Test

public void getName() {

String resourceName = "data/person1.json";

URL url = ResourceUtil.getResource(resourceName);

// /D:/project/IDEA_project/apache-study/target/test-classes/data/person1.json

System.out.println(url.getPath());

String name = FilenameUtils.getName(url.getPath());

// person1.json

System.out.println(name);

}

src/test/java/com/wmx/FilenameUtilsTest.java · 汪少棠/apache-study - Gitee.com