public static void main(String[] args) {
// TODO Auto-generated method stub
String sourceFolderPath="F://燕子//java";
String targetFolderPath="F://燕子//features//java";
targetFolderPath+=File.separator+sourceFolderPath.substring(sourceFolderPath.lastIndexOf(File.separator)+1);
copyFolder(sourceFolderPath,targetFolderPath);
}
/**
* 这个方法直接拿去调用
* @param sourceFolderPath 要copy的文件夹路径
* @param targetFolderPath 目标路径
*/
public static void copyFolder(String sourceFolderPath, String targetFolderPath) {
//System.out.println(fileName);
try {
(new File(targetFolderPath)).mkdirs(); // 如果文件夹不存在 则建立新文件夹
File a = new File(sourceFolderPath);
String[] file = a.list();
File temp = null;
for (int i = 0; i < file.length; i++) {
if (sourceFolderPath.endsWith(File.separator)) {
temp = new File(sourceFolderPath + file[i]);
} else {
temp = new File(sourceFolderPath + File.separator + file[i]);
}
if (temp.isFile()) {
FileInputStream input = new FileInputStream(temp);
FileOutputStream output = new FileOutputStream(targetFolderPath
+ "/" + (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(sourceFolderPath + "/" + file[i], targetFolderPath + "/" + file[i]);
}
}
} catch (Exception e) {
System.out.println("复制整个文件夹内容操作出错");
e.printStackTrace();
}
}