文件夹的复制
来源:互联网 发布:非农数据股市 编辑:程序博客网 时间:2024/05/29 13:19
IO文件流只能读取文件的内容,复制文件夹就是多个文件复制的组合。难点在于找到出这个文件夹下的所有文件,如果这个文件夹下面有子文件,还需要找出这个子文件夹下面的所有文件,这就需要用到递归。
package io.file;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.util.Scanner;public class CopyDir {public static void main(String[] args) {/*Scanner scanner=new Scanner(System.in);String oldDir=scanner.nextLine();String newDir=scanner.nextLine();*/File oldFile=new File("F:"+File.separator+"music");File newFile=new File("F:"+File.separator+"music1");listAllFiles(oldFile,newFile);}private static void listAllFiles(File oldDir,File newDir) {newDir.mkdirs();File[] files=oldDir.listFiles();for(int i=0;i<files.length;i++){File fileTemp=files[i];if(fileTemp.isFile()){File file1=new File(oldDir+File.separator+fileTemp.getName());File file2=new File(newDir+File.separator+fileTemp.getName());copy(file1,file2);System.out.println(file1.getAbsolutePath());System.out.println(file2.getAbsolutePath());}else if(fileTemp.isDirectory()){File file1=new File(oldDir+File.separator+fileTemp.getName());File file2=new File(newDir+File.separator+fileTemp.getName());file2.mkdirs();listAllFiles(file1, file2);}}}private static void copy(File file1, File file2) {//file1的内容读出来写到file2try {InputStream in=new FileInputStream(file1);byte[] b=new byte[in.available()];in.read(b);OutputStream out=new FileOutputStream(file2);out.write(b);out.close();in.close();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
阅读全文
0 0
- Qt-文件夹的复制
- 文件夹的移动复制
- MFC文件夹的复制
- 文件夹的复制
- 文件夹的复制
- MFC文件夹的复制
- 文件夹的复制
- 文件夹的复制
- C#复制文件夹,删除文件夹的方法
- C#复制文件夹,删除文件夹的方法
- delphi 复制文件夹的函数
- C#文件夹复制的类
- C# 复制文件夹的操作
- 文件夹的复制和删除
- 递归的方法复制文件夹
- java 简化文件夹的复制;
- 文件夹的删除与复制
- 文件夹复制的Java实现
- hdu2036
- poj3090 Visible Lattice Points(欧拉函数 莫比乌斯反演)
- 算法--冒泡排序
- OpenCV图像处理--将图像裁剪为圆形
- SVN 上传代码
- 文件夹的复制
- ajax请求步骤
- 字符串数组的冒泡排序,从小到大
- canvas 画图
- Context都没弄明白,还怎么做Android开发
- 排序算法总结一(JavaScript)
- 动态规划详解
- Pixy通过TTL转USB与电脑串口调试助手显示坐标
- 【河南省多校联萌(二)haut A】