黑马程序员技术交流社区
标题:
复制一个文件夹下所有的内容到另一文件夹
[打印本页]
作者:
天黑偷牛
时间:
2014-8-31 19:47
标题:
复制一个文件夹下所有的内容到另一文件夹
思路:列出当前文件夹下的所有内容如果是文件则复制到新的文件夹下,如果是文件夹,则继续列出文件列表,执行前面的操作,这里就要递归了
/**
* 把oldPath目录下的文件和文件夹复制到newPath目录下
* @param oldPath
* @param newPath
* @throws IOException
*/
public static void copyDir(String oldPath,String newPath) throws IOException{
//先判断路径是不是带分隔符,如果没有就加上
if(!newPath.endsWith(File.separator)){
newPath = newPath+File.separator;
}
//将文件或文件夹封装成File对象
File oldDir = new File(oldPath);
File newDir;
//当前文件夹下的列表
File[] files = oldDir.listFiles();
for(File f:files){
if(f.isDirectory()){
//如果是文件夹,递归
String dirName = f.getName();
newDir = new File(newPath+f.getName());
newDir.mkdirs();
copyDir(f.getAbsolutePath(),newDir.getAbsolutePath());
}
if(f.isFile()){
//如果是文件,则复制到新的文件夹下
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(f));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(newPath+f.getName()));
byte[] buf = new byte[1024];
int len = 0;
while((len=bis.read(buf))!=-1){
bos.write(buf, 0, len);
bos.flush();
}
bos.close();
bis.close();
}
}
}
作者:
舍我其谁
时间:
2014-8-31 20:07
赞一个,加油
作者:
天黑偷牛
时间:
2014-8-31 21:13
舍我其谁 发表于 2014-8-31 20:07
赞一个,加油
哈哈,哈哈
作者:
huanglyhf
时间:
2014-9-1 10:37
不错!这道题不会的得练练!
作者:
Sakuratossi
时间:
2014-9-1 11:26
学习了,很好的参考
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2