java递归复制文件及文件夹

package base;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.io.File;

import java.io.InputStream;

import java.io.OutputStream;

public class copy {

public static void main(String[] args) throws IOException {

File s = new File("../Test");

File t = new File("../yang");

copyFolder(s,t);

}

/**

* 复制一个目录及其子目录、文件到另外一个目录

* @param src

* @param dest

* @throws IOException

*/

static void copyFolder(File src, File dest) throws IOException {

if (src.isDirectory()) {

if (!dest.exists()) {

dest.mkdir();

}

String files[] = src.list();

for (String file : files) {

File srcFile = new File(src, file);

File destFile = new File(dest, file);

// 递归复制

copyFolder(srcFile, destFile);

}

} else {

InputStream in = new FileInputStream(src);

OutputStream out = new FileOutputStream(dest);

byte[] buffer = new byte[1024];

int length;

while ((length = in.read(buffer)) > 0) {

out.write(buffer, 0, length);

}

in.close();

out.close();

}

}

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-06 09:38:47

java递归复制文件及文件夹的相关文章

JAVA实现复制文件夹

1 package com.filetest; 2 3 import java.io.BufferedInputStream; 4 import java.io.BufferedOutputStream; 5 import java.io.File; 6 import java.io.FileInputStream; 7 import java.io.FileOutputStream; 8 import java.io.IOException; 9 import java.util.Scanne

java 打印流 递归复制子文件子文件夹 不同编码文件复制到同一文件中 序列化流反序列化流

package com.swift.jinjie; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.PrintStream; /*从键盘输入一个文件夹路径,利用打印流将该文件夹下的所有文件(包括子文件夹)复制到D盘下temp文件夹下.*/ public class PrintAllT

java复制文件与文件夹

复制文件或文件夹时,可以写一个方法,接受两个File类型参数.一个是要复制的文件,另一个是要复制的地方.方法具体大概是这样,先判断 源文件是文件还是文件夹,如是文件,就在目标路径里用字节流复制该文件.关键在于如何在目标路径里复制文件.可以创建一个File对象参数为目标对象+源文件.getName().如果是文件夹,就在目标路径里复制一个文件夹,即创建一个File对象构造参数为目标+源文件路径.getName. 在用File对象的 mkdir 在本地创建文件夹. 然后获取要复制的文件夹中的文件.遍

Java基础知识强化之IO流笔记48:IO流练习之 复制单级文件夹案例

1. 复制单级文件夹     数据源:e:\\demo     目的地:e:\\test 分析: A:封装目录 B:获取该目录下的所有文本的File数组 C:遍历该File数组,得到每一个File对象 D:把该File进行复制 2.  代码示例: 1 package cn.itcast_03; 2 3 import java.io.BufferedInputStream; 4 import java.io.BufferedOutputStream; 5 import java.io.File;

java文件和文件夹的增删复制

在使用java进行开发时经常会用到文件和文件夹的增删复制等方法,我写了一个小工具类,和大家分享,希望大家指正: package com.wangpeng.utill; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileWriter; import java.io.InputStream; import java.io.PrintWrite

PHP递归复制文件夹以及传输文件夹到其他服务器。

项目中需要复制整个文件夹,有时候还需要将整个文件夹传输到远程服务器. 这里就要递归遍历整个文件夹了,想看递归遍历文件夹的代码. function deepScanDir($dir) { $fileArr = array (); $dirArr = array (); $dir = rtrim($dir, '//'); if (is_dir($dir)) { $dirHandle = opendir($dir); while (false !== ($fileName = readdir($dir

java递归处理文件夹和文件

import java.io.File; /** * 文件综合使用示例 */ public class FileDelete { public static void main(String[] args) { File f = new File("d:\\test"); printAllFile(f); File f1 = new File("d:\\test"); deleteAll(f1); } /** * 打印f路径下所有的文件和文件夹 * * @param

利用Java IO复制多级文件夹

package package1; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; public class Copy {         private static File newDest = null;         private static FileInputStream fis = null;    

Java递归输出指定路径下所有文件及文件夹

package a.ab; import java.io.File; import java.io.IOException; public class AE { public static void main(String[] args) { File f=new File("D:\\DD"); new AE().fileList(f); } public void fileList(File fl){ try{ File[] fs=fl.listFiles(); for(File f