Java中实现对IO操作文件的复制拷贝

Java中实现对IO操作文件的复制拷贝

package cn.look.file;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;

public class CopyFile {

public static void main(String[] args) throws Exception{
	// TODO 自动生成的方法存根
	long start=System.currentTimeMillis();  //记录起始时间
	//此处的args在创建该类的时候已经运行一次,然后在点开Coverage配置,找到自变量,在里面设置
	//你要输入你的文件路径以及你要复制文件的存储路径
	if(args.length!=2) {  //初始化参数不是两位
		System.out.println("命令执行错误:");
		System.exit(1);
	}
	//如果输入的参数正确,那么就应该进行文件的验证
	File firstfile=new File(args[0]);  //第一个文件的路径
	if(!firstfile.exists()) {
		System.out.println("源文件不存在,请确认文件的路径是否正确");
		System.exit(1);
	}
	
	//当源文件的路径正确时,那么下面进行文件的拷贝
	File copyfile=new File(args[1]);  //拷贝文件的路径
	if(!copyfile.getParentFile().exists()) { //先判断要拷贝的文件的父路径是否存在
		copyfile.getParentFile().mkdirs();
	}
	
	InputStream input=new FileInputStream(firstfile);
	OutputStream output=new FileOutputStream(copyfile);
	
	//第一种读取文件的方式,这种方式读取速度相对较慢,不建议使用
	/*int temp=0;  //用于保存每次读取的内容
	while((temp=input.read())!=-1) {
		output.write(temp);  //输出单个字节
	}*/
	
	//第二种文件读取的方式,这种方式在以后开发中运用较多,建议使用
	byte[] a=new byte[1024];  //建议值设为1024或者2048,太大会浪费空间
	int temp=0;
	while((temp=input.read(a))!=-1) {
		output.write(a, 0, temp);
	}
	
	input.close();
	output.close();
	long end=System.currentTimeMillis();
	System.out.println("文件拷贝的时间为:"+(end-start));
	
}

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值