黑马程序员技术交流社区
标题:
复制整个文件夹,刚他M整出来,折腾毁了
[打印本页]
作者:
木子小四
时间:
2016-4-10 17:00
标题:
复制整个文件夹,刚他M整出来,折腾毁了
需求:
从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中
------------------------------------------------------------------------------------------
擦,需求就这一行,折腾了我一天
。。。。
package com.heima.test;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Scanner;
public class Test8 {
/**
* 3,从键盘接收两个文件夹路径,把其中一个文件夹中(包含内容)拷贝到另一个文件夹中
*
* 分析:
* 1.针对键盘录入的路径进行判断,正确的话,返回
* 2.读取输入的路径文件,
* 3,将读取的文件写出另一个路径下
* @throws IOException
*/
public static void main(String[] args) throws IOException {
File f1 = null;
File f2 = null;
f1 = getFile();
f2 = getFile2();
File[] files = f1.listFiles();
method(files,f2);
System.out.println("复制好了");
}
//获取正确的键盘录入的文件夹路径
public static File getFile(){
System.out.println("请键盘输入一个文件夹路径");
while(true){
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
File f = new File(s);
if((!f.exists()) || f.isFile()){
System.out.println("输入错误,这不是文件夹路径唉```");
}else if(f.isDirectory()){
return f;
}
}
}
//获取正确的输出copy路径
public static File getFile2(){
System.out.println("请键盘输入一个要存入的文件夹路径");
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
File f = new File(s);
if(!f.exists()){
f.mkdir();
}
return f;
}
//对录入的文件夹路径进行操作
public static void method(File[] files,File f2) throws IOException{
//创建字节输入流.输出流
for (int i = 0; i < files.length; i++) {
if(files[i].isFile()){
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(files[i]));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(f2.getPath()
+ File.separator + files[i].getName()));
int b;
while((b = bis.read())!=-1){
bos.write(b);
}
bos.close();
bis.close();
}
if(files[i].isDirectory()){
File f3 = new File(f2.getPath()+File.separator+files[i].getName());
f3.mkdir();
method(files[i].listFiles(),f3);
}
}
}
}
复制代码
作者:
pgymmc
时间:
2016-4-10 18:09
6666666得飞起
作者:
木子小四
时间:
2016-4-10 18:17
pgymmc 发表于 2016-4-10 18:09
6666666得飞起
阿西吧 少爷见笑了不是。。。。
作者:
木子小四
时间:
2016-4-10 21:42
亲友团们还挺给力 ,感谢鼓励,一首《杀猪刀》送给你们。。。。。哈哈
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2