package yn.ngems.cn;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
public class JavaDemo{
public static void main(String[] args) throws IOException {
if(args.length != 2) {
System.out.println("系统执行错误,请检查!");
System.exit(1);
}
long start = System.currentTimeMillis();
FileUtil fu = new FileUtil(args[0], args[1]);
System.out.println(fu.copyFile()? "文件拷贝成功!" : "文件拷贝失败!");
long end = System.currentTimeMillis();
System.out.println("拷贝文件用时:" + (end - start));
}
}
class FileUtil{
private File srcFile;
private File desFile;
public FileUtil(File srcFile,File desFile) {
this.srcFile = srcFile;
this.desFile = desFile;
}
public FileUtil(String src,String des) {
this(new File(src),new File(des));
}
public boolean copyFile() throws IOException {
if(!this.srcFile.exists()) {
return false;
}
if(!this.desFile.getParentFile().exists()) {
this.desFile.getParentFile().mkdirs();
}
InputStream input = null;
OutputStream output = null;
int len = 0;
try {
input = new FileInputStream(this.srcFile);
output = new FileOutputStream(this.desFile);
byte [] data = new byte[1024];
while((len = input.read(data)) != -1) {
output.write(data);
}
return true;
}catch(Exception e) {
throw e;
}finally {
if(input != null) {
input.close();
}
if(output != null) {
output.close();
}
}
}
}