---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------
//关于Java中文件夹的复制和递归的应用的小例子
import java.io.*;
class CopyWenJianJia
{
public static void main(String[] args)throws Exception
{
//源文件夹
String yuan = "C:\\nimeizide";
//目的地
String mudi = "D:\\nimeizide";
//建立目标文件夹
(new File(mudi)).mkdirs();
//获取源文件夹当下的文件或目录
File[] files = (new File(yuan)).listFiles();
for(File file : files)
{
if(file.isDirectory())
{
String yuanDir = yuan + "\\" + file.getName();
String mudiDir = mudi + "\\" + file.getName();
//复制目录
copyDir(yuanDir, mudiDir);
}
else
{
copyFile(file, new File(mudi + "\\" + file.getName()));
}
}
}
public static void copyDir(String yuanDir, String mudiDir)throws Exception
{
(new File(mudiDir)).mkdirs();
File[] files = (new File(yuanDir)).listFiles();
for(File file : files)
{
if(file.isFile())
{
File yuanFile = file;//源文件
File mudiFile = new File(new File(mudiDir).getAbsolutePath() + "\\" + file.getName());
copyFile(yuanFile, mudiFile);
}
else
{
String yuanJia = yuanDir + "\\" + file.getName();
String mudiJia = mudiDir + "\\" + file.getName();
copyDir(yuanJia, mudiJia);
}
}
}
public static void copyFile(File yuanFile, File mudiFile)throws Exception
{
BufferedInputStream buis = new BufferedInputStream(new FileInputStream(yuanFile.getAbsoluteFile()));
BufferedOutputStream buos = new BufferedOutputStream(new FileOutputStream(mudiFile.getAbsoluteFile()));
byte[] buf = new byte[1024];
int len;
while((len = buis.read(buf)) != -1)
{
buos.write(buf, 0, len);
buos.flush();
}
buis.close();
buos.close();
}
}
---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------