文件夹的复制
来源:互联网 发布:淘宝如何设置宝贝预览 编辑:程序博客网 时间:2024/06/09 13:49
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class DirectoryCopy {
public void copy(File src,File des){
if(!des.exists())
{
des.mkdirs();
}
if(src.isFile()){
File file=new File(des.getAbsolutePath()+"/"+src.getName());
fileCopy(src,file);
}
else{
File file=new File(des.getAbsolutePath()+"/"+src.getName());
file.mkdir();
File[] files=src.listFiles();
for(int i=0;i<files.length;i++){
copy(files[i],file);
}
}
}
public static boolean fileCopy(File src,File des){
if(src==null||des==null){
System.out.println("有一文件为空");
return false;
}
if(!src.exists()){
System.out.println("源文件不存在");
return false;
}
FileInputStream fis=null;
FileOutputStream fos=null;
try {
fis=new FileInputStream(src);
fos=new FileOutputStream(des);
byte[] buffer=new byte[1024];
int readSize=fis.read(buffer);
while(readSize!=-1){
if(readSize==1024){
fos.write(buffer);
}
else{
for(int i=0;i<readSize;i++){
if(buffer[i]!=0){
fos.write(buffer[i]);
}else{
break;
}
}
}
buffer=new byte[1024];
readSize=fis.read(buffer);
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(fis!=null){
try {
fis.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(fos!=null){
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
return true;
}
}
import java.io.File;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
DirectoryCopy directoryCopy=new DirectoryCopy();
File src=new File("D:/a");
File des=new File("D:/b");
directoryCopy.copy(src, des);
}
}
- Qt-文件夹的复制
- 文件夹的移动复制
- MFC文件夹的复制
- 文件夹的复制
- 文件夹的复制
- MFC文件夹的复制
- 文件夹的复制
- 文件夹的复制
- C#复制文件夹,删除文件夹的方法
- C#复制文件夹,删除文件夹的方法
- delphi 复制文件夹的函数
- C#文件夹复制的类
- C# 复制文件夹的操作
- 文件夹的复制和删除
- 递归的方法复制文件夹
- java 简化文件夹的复制;
- 文件夹的删除与复制
- 文件夹复制的Java实现
- Windows中的字符编码
- c++中const关键字全面总结
- hdoj.1012 u Calculate e 20140725
- 基于PHP的cURL快速入门
- 第7章 与运行环境交互
- 文件夹的复制
- PHP连接到mysql的方法--mysqli和PDO
- Tableview下拉重叠解决办法
- 二叉树的非递归遍历
- C#中的正则表达式表达'.'和'\'
- Linux下scp和rsync的使用
- 找朋友
- NYOJ 7 街区最短路径问题
- 临沂哮喘病醫院