您的位置:首页 > 编程语言 > Java开发

java代码实现文件夹以及下面文件夹和文件的复制

2015-01-13 11:23 786 查看
/**
* 拷贝文件夹
* @param sourcePath 源路径
* @param targetPath 目标路径
*/
public static void copyFolder(String sourcePath, String targetPath) {

try {
(new File(targetPath)).mkdirs(); // 如果文件夹不存在 则建立新文件夹
File file = new File(sourcePath);
String[] files = file.list();
File temp = null;
for (int i = 0; i < files.length; i++) {
if (sourcePath.endsWith(File.separator)) {
temp = new File(sourcePath + files[i]);
} else {
temp = new File(sourcePath + File.separator + files[i]);
}

if (temp.isFile()) {//判断是不是文件,是文件直接拷贝
FileInputStream input = new FileInputStream(temp);
System.out.println(temp.getName());
FileOutputStream output = new FileOutputStream(targetPath+ "/" + (temp.getName()).toString());
byte[] b = new byte[1024 * 5];
int len;
while ((len = input.read(b)) != -1) {
output.write(b, 0, len);
}
output.flush();
output.close();
input.close();
}
if (temp.isDirectory()) {// 如果是子文件夹
copyFolder(sourcePath + "/" + files[i], targetPath + "/" + files[i]);
}
}
} catch (Exception e) {
System.out.println("复制整个文件夹内容操作出错");
e.printStackTrace();

}

}


注:参考File.separator 文件路径
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: