声明:很多东西都是偶搜集整理实践过得,具体从那的来得也不清楚了,所以不著名出处
利用java本地拷贝文件及文件夹
如何实现文件夹对文件夹的拷贝呢?如果文件夹里还有文件夹怎么办呢?
接下来我就将我的方法演示给一些初学者,希望能够帮助你们!
/*
* CopyRight by http://www.designac.org/
*/
package copyfile;
import java.io.*;
/**
* @author Administrator
*
* Class Function:
*/
public class copyDirectory {
public static void main(String args[]) throws IOException {
String url1="C:/Downloads/kele";
String url2="d:/java/copyfile/copy";
(new File(url2)).mkdirs();
File[] file=(new File(url1)).listFiles();
for(int i=0;i<file.length;i++){
if(file[i].isFile()){
FileInputStream input=new FileInputStream(file[i]);
FileOutputStream output=new FileOutputStream(url2+"/"+file[i].getName());
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(file[i].isDirectory()){
copyDirectiory(url2+"/"+file[i].getName(),url1+"/"+file[i].getName());
}
}
}
public static void copyDirectiory(String file1,String file2) throws IOException{
(new File(file1)).mkdirs();
File[] file=(new File(file2)).listFiles();
for(int i=0;i<file.length;i++){
if(file[i].isFile()){
FileInputStream input=new FileInputStream(file[i]);
FileOutputStream output=new FileOutputStream(file1+"/"+file[i].getName());
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(file[i].isDirectory()){
copyDirectiory(file1+"/"+file[i].getName(),file2+"/"+file[i].getName());
}
}
}
}
相关文章
- 如何从Class文件夹外部读取java中的属性文件?
- 如何用Java实现DVD的一些功能
- 如何用Java创建图形?
- 如何将整个文件夹从Amazon EC2 Linux实例复制到本地Linux机器?
- 如何处理Android/Maven项目中缺少的src/test/java源文件夹?
- 【IDE】Eclipse中的workspace & workingset 如何更好的搭配使用,以及本地项目文件夹的分类
- FileNotFound如果放在src文件夹Java Eclipse之外
- 如何在测试期间将电子邮件发送到本地文件夹?
- 如何在Java中获取文件夹中的所有文件
- Gradle:如何在Android构建中包含一个来自依赖java项目的本地jar ?