java_複製檔案及目錄到另一個盤下
阿新 • • 發佈:2019-01-24
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class FIleTest {
public static void main(String[] args) throws IOException {
File file = new File("C:\\Users\\遠方\\Desktop\\作業");
File newFile = new File("D:\\迅雷下載");
copy(file,newFile);
}
public static void copy(File file,File newFile) throws IOException {
File newFiles = new File(newFile,file.getName());
File[] filearray = file.listFiles();
System.out.println(filearray.length);
newFiles.mkdir();
for(File files :filearray){
if(files.isDirectory()){
//newFiles.mkdir();
copy(files,newFiles);
}else{
//newFiles.mkdir();
write(files,newFiles);
}
}
}
public static void write(File file,File newFile) throws IOException{
File newFiles = new File(newFile,file.getName());
BufferedOutputStream fos =new BufferedOutputStream(new FileOutputStream(newFiles));
BufferedInputStream fis =new BufferedInputStream(new FileInputStream(file));
byte[] bys = new byte[1024];
int len = 0;
while((len=fis.read(bys))!=-1){
fos.write(bys, 0, len);
}
}
}