java复制文件到指定_Java 复制指定类型的文件到指定文件夹下

Java文件复制

Java复制文件有多种方式,本文只列举了其中的一种。

该程序的效果是:获取指定文件夹下的指定类型的文件,然后复制到指定的文件夹下。

PS:该程序一次只能复制一种类型

public class CopyFileExample {

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

//获取键盘的输入

BufferedReader buffer=new BufferedReader(new InputStreamReader(System.in));

System.out.println("请输入原文件路径:");

String oldPath = buffer.readLine();

System.out.println("请输入复制后路径:");

String newPath = buffer.readLine();

System.out.println("请输入复制的文件类型:");

String fileType = buffer.readLine();

File files=new File(oldPath);

getAllFile(files,newPath,fileType);

System.out.println("复制成功");

}

//获取文件名称的方法

public static void getAllFile(File file,String newPath,String fileType){

File[] files = file.listFiles();

for (File fileName : files) {

if(fileName.isDirectory()){

//如果是文件夹

getAllFile(fileName,newPath,fileType);

}else{

//如果是文件

//获取文件的绝对路径

String name = fileName.getAbsolutePath();

if(name.endsWith(".md")){

//通过获取的路径进行文件的复制

//调用复制的方法

fileCopy(name,newPath);

}

}

}

}

//文件复制方法

public static void fileCopy(String str,String newPath){

//获取文件名称

String substring = str.trim().substring(str.lastIndexOf("\\") + 1);

FileReader fr=null;

FileWriter fw=null;

try {

fr=new FileReader(str);

fw=new FileWriter(newPath+substring);

int len=0;

char[] ch=new char[1024];

while((len=fr.read(ch))!=-1){

fw.write(ch,0,len);

}

} catch (IOException e) {

e.printStackTrace();

}finally {

//防止空指针异常

if(fw!=null&&fr!=null){

try {

fw.close();

fr.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

}

}

如有问题欢迎指正

0c2d94f6328b

pixabay.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值