作者: 黑马粉、峥 时间: 2014-5-25 22:40
package exam;
//使用带缓冲功能的字节流复制文件。
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.DecimalFormat;
public class Test7
{
public static void copyFile(String file,String path){
BufferedInputStream bis = null;
BufferedOutputStream bos = null;
try
{
File copyFile = new File(file);
File savePath = new File(path);
//如果要复制的文件不存在或者不是文件,发出提示并退出程序
if (!(copyFile.exists() && copyFile.isFile()))
{
System.out.println("无效的文件,请检查");
System.exit(0);
}
//如果要保存到的目录不存在,则创建该目录
if (!(savePath.isDirectory())){
System.out.println("你指定的目录不存在,将自动创建!");
savePath.mkdirs();
}
//创建目标文件完整路径。
File saveFile = new File(savePath+"\\"+copyFile.getName());
//如果saveFile是一个文件,说明有同名文件存在,则提示并退出程序,避免覆盖同名文件。
if (saveFile.isFile())
{
System.out.println("注意!该目录下有同名文件。");
System.exit(0);
}
//创建输入流和输出流。
bis = new BufferedInputStream(new FileInputStream(copyFile));
bos = new BufferedOutputStream(new FileOutputStream(saveFile));
//获取输入流中的的字节数。
long len = bis.available();