commons-io是apache开源基金组织提供的一组有关IO操作的类库,可以挺提高IO功能开发的效率。commons-io工具包提供了很多有关io操作的类,见下表:
包 | 功能描述 |
---|---|
org.apache.commons.io | 有关Streams、Readers、Writers、Files的工具类 |
org.apache.commons.io.input | 输入流相关的实现类,包含Reader和InputStream |
org.apache.commons.io.output | 输出流相关的实现类,包含Writer和OutputStream |
org.apache.commons.io.serialization | 序列化相关的类 |
步骤:
public static int copy(InputStream in, OutputStream out)
: 把input输入流中的内容拷贝到output输出流中,返回拷贝的字节个数(适合文件大小为2GB以下)public static long copyLarge(InputStream in, OutputStream out)
:把input输入流中的内容拷贝到output输出流中,返回拷贝的字节个数(适合文件大小为2GB以上)文件复制案例演示:
public static void main(String[] args) throws Exception {
// 文件路径需要修改,改成自己文件的路径
File file = new File("src/test.txt");
FileInputStream is = new FileInputStream(file);
// 文件路径需要修改
File file1 = new File("src/test1.txt");
FileOutputStream os = new FileOutputStream(file1);
// 文件复制
IOUtils.copy(is, os);
}
public static void copyFileToDirectory(final File srcFile, final File destFile)
:复制文件到另外一个目录下。public static void copyDirectoryToDirectory( file1 , file2 )
:复制file1目录到file2位置。案例演示:
public static void main(String[] args) throws IOException {
//1.将d:\\视频.itcast文件复制到e:\\下
FileUtils.copyFileToDirectory(new File("d:\\视频.itcast"), new File("e:\\"));
//2.将"d:\\多级目录"复制到"e:\\"下。
FileUtils.copyDirectoryToDirectory(new File("d:\\多级目录"), new File("e:\\"));
}