Java Apache.commons.ioFileUtils使用

Java Apache.commons.ioFileUtils使用·

开发工具与关键技术:java、 elipse2019、jdk1.8 
作者:Amewin	
撰写时间:2019年5月8日

Apache简介

Apache软件基金会(也就是Apache Software Foundation,简称为ASF),是专门为支持开源软件项目而办的一个非盈利性组织。在它所支持的Apache项目与子项目中,所发行的软件产品都遵循Apache许可证(Apache License)。
在美国享有免税等特权 拥有大量的开源大型项目。

使用第三方jar包的原因:

JDK中提供的文件操作相关的类,但是功能都非常基础,进行复杂操作时需要做大量编程工作。实际开发中,往往需要你自己动手编写相关的代码,尤其在遍历目录文件时,经常用到递归,非常繁琐。 Apache-commons工具包中提供了IOUtils/FileUtils,可以让我们非常方便的对文件和目录进行操作。
其中Apache IOUtils和FileUtils类库为我们提供了更加简单、功能更加强大的文件操作和IO流操作功能。

注:本文主要讲述FileUtils使用方法

FileUtils 文件操作工具类


//复制文件夹(文件夹里面的文件内容也会复制),file1和file2平级。
//参数1:文件夹; 参数2:文件夹
void copyDirectory( file1 , file2 );  
 
//复制文件夹到另一个文件夹。 file1是file2的子文件夹.
//参数1:文件夹; 参数2:文件夹
void copyDirectoryToDirectory( file1 , file2 );
 
//复制文件夹,带有文件过滤功能
void copyDirectory(File srcDir, File destDir, FileFilter filter)
//****************************************************************//


//复制文件
void copyFile(final File srcFile, final File destFile) //复制文件到另外一个文件
 
void long copyFile(final File input, final OutputStream output) //复制文件到输出流
 
void copyFileToDirectory( file1 , file2)  //复制文件到一个指定的目录
 
//把输入流里面的内容复制到指定文件
void copyInputStreamToFile( InputStream source, File destination)
 
//把URL 里面内容复制到文件。可以下载文件。
//参数1:URL资源 ; 参数2:目标文件
void copyURLToFile(final URL source, final File destination)
 
//把URL 里面内容复制到文件。可以下载文件。
//参数1:URL资源 ; 参数2:目标文件;参数3:http连接超时时间 ; 参数4:读取超时时间
void copyURLToFile(final URL source, final File destination,
                                     final int connectionTimeout, final int readTimeout)
//****************************************************************//


//把字符串写入文件
void writeStringToFile(final File file, final String data, final String encoding)
 
//参数1:需要写入的文件,如果文件不存在,将自动创建。  参数2:需要写入的内容
//参数3:编码格式     参数4:是否为追加模式( ture: 追加模式,把字符串追加到原内容后面)
void writeStringToFile(final File file, final String data, final Charset encoding, final boolean
            append)

//****************************************************************//
//File:目标文件
//byte[]: 字节数组
//boolean append : 是否为追加模式
//final int off: 数组开始写入的位置 ; final int len :写入的长度
 
void writeByteArrayToFile(final File file, final byte[] data)
 
void writeByteArrayToFile(final File file, final byte[] data, final boolean append)
 
void writeByteArrayToFile(final File file, final byte[] data, final int off, final int len)
 
void writeByteArrayToFile(final File file, final byte[] data, final int off, final int len,
                                            final boolean append)

//****************************************************************//
//File file: 目标文件
//Collection lines: 内容集合
//boolean append : 是否为追加模式
//String encoding : 编码方式,比如"UTF-8" 
//String lineEnding : 每一行以什么结尾
void writeLines(final File file, final Collection<?> lines)
 
void writeLines(final File file, final Collection<?> lines, final boolean append)
 
void writeLines(final File file, final String encoding, final Collection<?> lines)
 
void writeLines(final File file, final String encoding, final Collection<?> lines,
                                  final boolean append)
                                  
void writeLines(final File file, final String encoding, final Collection<?> lines,
                                  final String lineEnding)
 
void writeLines(final File file, final String encoding, final Collection<?> lines,
                                  final String lineEnding, final boolean append)
 
void writeLines(final File file, final Collection<?> lines, final String lineEnding)
 
void writeLines(final File file, final Collection<?> lines, final String lineEnding,
                                  final boolean append)

由于测试过于工作量庞大后期会补充,后期补充。

你可能感兴趣的:(Java Apache.commons.ioFileUtils使用)