package com.liu.iotest;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.junit.Test;
public class testCopyFile {
@Test
public void copy() throws Exception {
File file = new File("E:\\sou");
showFile(file);
}
/**
* 判断file是目录还是文件 递归遍历
*
* @param file
* @throws Exception
*/
public void showFile(File file) throws Exception {
if (file.isDirectory()) {
midirs("D:", file);
File[] files = file.listFiles();
for (File ff : files) {
showFile(ff);
}
} else {
copeFile("D:", file);
}
}
/**
* make dir
*/
public void midirs(String path, File file) {
path = path + file.getPath().substring(2);
File fmidir = new File(path);
if (!fmidir.exists()) {
fmidir.mkdirs();
}
}
/**
* copy files
*
* @throws IOException
*/
public void copeFile(String path, File file) throws Exception {
path = path + file.getPath().substring(2);
File copyfile = new File(path);
InputStream in = new FileInputStream(file);
OutputStream out = new FileOutputStream(copyfile);
byte[] nBytes = new byte[1024];
int i = -1;
while ((i = in.read(nBytes)) != -1) {
out.write(nBytes, 0, i);
out.flush();
}
in.close();
out.close();
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.junit.Test;
public class testCopyFile {
@Test
public void copy() throws Exception {
File file = new File("E:\\sou");
showFile(file);
}
/**
* 判断file是目录还是文件 递归遍历
*
* @param file
* @throws Exception
*/
public void showFile(File file) throws Exception {
if (file.isDirectory()) {
midirs("D:", file);
File[] files = file.listFiles();
for (File ff : files) {
showFile(ff);
}
} else {
copeFile("D:", file);
}
}
/**
* make dir
*/
public void midirs(String path, File file) {
path = path + file.getPath().substring(2);
File fmidir = new File(path);
if (!fmidir.exists()) {
fmidir.mkdirs();
}
}
/**
* copy files
*
* @throws IOException
*/
public void copeFile(String path, File file) throws Exception {
path = path + file.getPath().substring(2);
File copyfile = new File(path);
InputStream in = new FileInputStream(file);
OutputStream out = new FileOutputStream(copyfile);
byte[] nBytes = new byte[1024];
int i = -1;
while ((i = in.read(nBytes)) != -1) {
out.write(nBytes, 0, i);
out.flush();
}
in.close();
out.close();
}
}