用java实现对文件夹的拷贝
2013-12-08 23:28
399 查看
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].getNam());
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());
}
}
}
}
{
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].getNam());
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());
}
}
}
}